body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74c3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-toast-width:320px;--toastify-toast-background:#fff;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error)}.Toastify__toast-container{box-sizing:border-box;color:#fff;padding:4px;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:320px;width:var(--toastify-toast-width);z-index:9999;z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:1em;top:1em}.Toastify__toast-container--top-center{left:50%;top:1em;transform:translateX(-50%)}.Toastify__toast-container--top-right{right:1em;top:1em}.Toastify__toast-container--bottom-left{bottom:1em;left:1em}.Toastify__toast-container--bottom-center{bottom:1em;left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{bottom:1em;right:1em}@media only screen and (max-width:480px){.Toastify__toast-container{left:0;margin:0;padding:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:0;transform:translateX(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:0;transform:translateX(0)}.Toastify__toast-container--rtl{left:auto;right:0}}.Toastify__toast{border-radius:4px;box-shadow:0 1px 10px 0 #0000001a,0 2px 15px 0 #0000000d;box-sizing:border-box;cursor:default;direction:ltr;display:flex;font-family:sans-serif;font-family:var(--toastify-font-family);justify-content:space-between;margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);overflow:hidden;padding:8px;position:relative;z-index:0}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-body{align-items:center;display:flex;flex:1 1 auto;margin:auto 0;padding:6px}.Toastify__toast-body>div:last-child{flex:1 1;word-break:break-word}.Toastify__toast-icon{display:flex;flex-shrink:0;margin-inline-end:10px;width:20px}.Toastify--animate{animation-duration:.7s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}@media only screen and (max-width:480px){.Toastify__toast{border-radius:0;margin-bottom:0}}.Toastify__toast-theme--dark{background:#121212;background:var(--toastify-color-dark);color:#fff;color:var(--toastify-text-color-dark)}.Toastify__toast-theme--colored.Toastify__toast--default,.Toastify__toast-theme--light{background:#fff;background:var(--toastify-color-light);color:#757575;color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{background:#3498db;background:var(--toastify-color-info);color:#fff;color:var(--toastify-text-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{background:#07bc0c;background:var(--toastify-color-success);color:#fff;color:var(--toastify-text-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{background:#f1c40f;background:var(--toastify-color-warning);color:#fff;color:var(--toastify-text-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{background:#e74c3c;background:var(--toastify-color-error);color:#fff;color:var(--toastify-text-color-error)}.Toastify__progress-bar-theme--light{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:#bb86fc;background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:#3498db;background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:#07bc0c;background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:#f1c40f;background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:#e74c3c;background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning{background:#ffffffb3;background:var(--toastify-color-transparent)}.Toastify__close-button{align-self:flex-start;background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;transition:.3s ease}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:focus,.Toastify__close-button:hover{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{bottom:0;height:5px;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:9999;z-index:var(--toastify-z-index)}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{left:auto;right:0;transform-origin:right}.Toastify__spinner{animation:Toastify__spin .65s linear infinite;border:2px solid #e0e0e0;border-color:var(--toastify-spinner-color-empty-area);border-radius:100%;border-right-color:#616161;border-right-color:var(--toastify-spinner-color);box-sizing:border-box;height:20px;width:20px}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,0,0)}to{opacity:0;transform:translate3d(2000px,0,0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,0,0)}to{opacity:0;transform:translate3d(-2000px,0,0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,20px,0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--bottom-left,.Toastify__bounce-enter--top-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--bottom-right,.Toastify__bounce-enter--top-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--bottom-left,.Toastify__bounce-exit--top-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--bottom-right,.Toastify__bounce-exit--top-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{animation-timing-function:ease-in;opacity:0;transform:perspective(400px) rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px) rotateX(-20deg)}60%{opacity:1;transform:perspective(400px) rotateX(10deg)}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:perspective(400px)}30%{opacity:1;transform:perspective(400px) rotateX(-20deg)}to{opacity:0;transform:perspective(400px) rotateX(90deg)}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideOutRight{0%{transform:translateZ(0)}to{transform:translate3d(110%,0,0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translateZ(0)}to{transform:translate3d(-110%,0,0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translateZ(0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translateZ(0)}to{transform:translate3d(0,-500px,0);visibility:hidden}}.Toastify__slide-enter--bottom-left,.Toastify__slide-enter--top-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--bottom-right,.Toastify__slide-enter--top-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--bottom-left,.Toastify__slide-exit--top-left{animation-name:Toastify__slideOutLeft}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-name:Toastify__slideOutRight}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown}@keyframes Toastify__spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-page{align-items:center;background-color:#f8f9fa;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:2rem;text-align:center}.error-page h1{color:#dc3545;font-size:2.5rem;margin-bottom:1rem}.error-page p{color:#6c757d;font-size:1.2rem;margin-bottom:2rem}.refresh-button{background-color:#007bff;border-radius:.25rem;font-size:1rem;padding:.75rem 1.5rem;transition:background-color .2s}.refresh-button:hover{background-color:#0056b3}.rules-page{align-items:center;background-color:#f8f5f2;display:flex;flex-direction:column;font-family:Georgia,serif;gap:30px;margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.rules-header{margin-bottom:30px;text-align:center}.rules-header h1{font-size:32px;margin-bottom:15px}.rules-header h1,.rules-header h2{color:#6b705c;font-family:Georgia,serif}.rules-header h2{font-size:24px}.rules-content{background:#fff;background-color:#f8f5f2;border:2px solid #b7b7a4;border-radius:15px;box-shadow:0 4px 20px #0000001a;max-width:600px;padding:30px;text-align:left;transition:transform .2s ease;width:100%}.rules-content:hover{box-shadow:0 6px 25px #00000026;transform:translateY(-5px)}.rules-section{border-bottom:1px solid #b7b7a4;margin-bottom:25px;padding-bottom:20px}.rules-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0;text-align:center}.rules-section h3{color:#6b705c;font-family:Georgia,serif;font-size:20px;margin-bottom:15px}.rules-section p{color:#6b705c;font-size:16px;font-weight:400;line-height:1.6;margin:15px 0}.rules-section ul{list-style-type:none;margin:15px 0;padding-left:20px}.rules-section ul li{color:#6b705c;font-size:16px;font-weight:400;line-height:1.4;margin:8px 0;position:relative}.rules-section ul li:before{color:#a5a58d;content:"•";font-weight:700;left:-20px;position:absolute}.rules-buttons{display:flex;gap:20px;justify-content:center;margin-top:30px;width:100%}.rules-buttons a{background-color:#a5a58d;border-radius:8px;color:#fff;font-family:inherit;font-weight:600;letter-spacing:.5px;min-width:120px;padding:12px 24px;text-align:center;text-decoration:none;text-transform:uppercase;transition:all .2s ease}.rules-buttons a:hover{background-color:#b7b7a4;box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.coffee-link{display:inline-block;margin-top:15px;transition:transform .2s ease}.coffee-link:hover{transform:scale(1.05)}.coffee-link img{border-radius:8px;box-shadow:0 4px 12px #0000001a}@media (max-width:768px){.rules-page{padding:15px}.rules-content{padding:20px}.rules-buttons{align-items:center;flex-direction:column;max-width:300px;width:100%}.rules-buttons a{text-align:center;width:100%}}.nav-container{font-family:Georgia,serif;left:0;position:fixed;top:0;z-index:1000}.hamburger-menu{align-items:center;background-color:#a5a58d;border:none;border-radius:8px;box-shadow:0 2px 8px #0000001a;cursor:pointer;display:flex;flex-direction:column;gap:6px;height:40px;justify-content:center;left:20px;padding:8px;position:fixed;top:20px;transition:all .3s ease;width:40px}.hamburger-menu:hover{background-color:#b7b7a4;box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.hamburger-line{background-color:#fff;height:2px;transition:all .3s ease;width:24px}.hamburger-menu.open .hamburger-line:first-child{transform:translateY(8px) rotate(45deg)}.hamburger-menu.open .hamburger-line:nth-child(2){opacity:0}.hamburger-menu.open .hamburger-line:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.nav-menu{-webkit-overflow-scrolling:touch;background-color:#f8f5f2;border-right:2px solid #b7b7a4;box-shadow:2px 0 10px #0000001a;display:flex;flex-direction:column;height:100vh;height:100dvh;left:0;overflow-y:auto;padding:20px;position:fixed;top:0;transform:translateX(-100%);transition:transform .3s ease;width:300px}.nav-menu.open{transform:translateX(0)}.nav-menu .logo-container{align-items:center;border-bottom:2px solid #b7b7a4;display:flex;gap:15px;margin-bottom:30px;padding:20px 0;position:relative}.nav-menu .logo-container img{height:50px;object-fit:contain;width:50px}.nav-menu .logo-container h1{color:#6b705c;font-family:Georgia,serif;font-size:24px;margin:0}.nav-menu ul{display:flex;flex-direction:column;gap:2px;list-style:none;margin:0;padding:0}.nav-menu li{background:none;border:none;box-shadow:none;margin-bottom:0}.nav-menu a{background-color:#a5a58d;border:none;border-radius:10px;box-shadow:0 2px 8px #0000000a;color:#fff;display:block;font-family:Georgia,serif;font-size:clamp(.9rem,2vw,1.1rem);font-weight:700;margin:0;padding:clamp(6px,1.2vw,9px) 0;text-align:center;text-decoration:none;transition:background .2s,color .2s,transform .15s;width:100%}.nav-menu a.active,.nav-menu a:hover{background-color:#b7b7a4;box-shadow:0 4px 16px #00000014;color:#fff;transform:translateY(-2px) scale(1.03)}.logout-btn{background:#6b705c;border:none;border-radius:8px;bottom:24px;box-shadow:0 2px 8px #00000014;color:#fff;cursor:pointer;font-family:Georgia,serif;font-size:1rem;font-weight:700;padding:8px 20px;position:absolute;right:24px;transition:background .2s,transform .15s;z-index:2}.logout-btn:hover{background:#a5a58d;color:#fff;transform:translateY(-2px) scale(1.04)}.logout-list-item{display:flex;justify-content:flex-end;margin-bottom:0!important;margin-top:0!important;padding-bottom:0!important;padding-top:0!important}.logout-icon-btn{align-items:center;background:#fff!important;border:1.5px solid #b7b7a4;border-radius:8px;box-shadow:0 2px 6px #0000000a;display:flex;height:24px;justify-content:center;margin:0!important;padding:0!important;transition:background .2s,border-color .2s,box-shadow .2s;width:24px}.logout-icon-btn:hover{background:#a5a58d;border-color:#6b705c}.logout-icon-btn svg{display:block}.nav-footer{border-top:2px solid #b7b7a4;display:flex;justify-content:flex-end;margin-top:auto;padding:12px 0}.nav-divider{border:none;border-top:3px solid #b7b7a4;margin:18px 0 14px}.blog-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px;margin-left:0}.blog-filter-dropdown{background:#fff;border:1.5px solid #b7b7a4;border-radius:6px;color:#6b705c;font-family:Georgia,serif;font-size:1em;margin-left:16px;min-width:130px;outline:none;padding:6px 10px;transition:border-color .2s}.blog-filter-dropdown:focus{border-color:#a5a58d}.blog-title{color:#6b705c;font-family:Georgia,serif;font-size:1.3rem;font-weight:700;margin-left:0}.blog-feed{margin-bottom:env(safe-area-inset-bottom,0);padding-bottom:20px}@media (max-width:768px){.nav-menu{padding:10px;width:280px}.nav-menu .logo-container h1{font-size:20px}.nav-menu a{font-size:.95rem;padding:6px 0}.logout-btn{bottom:12px;font-size:.95rem;padding:7px 14px;right:12px}.logout-icon-btn{height:20px;margin:0!important;padding:0!important;width:20px}.logo-container{margin-bottom:16px;padding:10px 0}.blog-feed{padding-bottom:16px}.nav-menu ul{gap:1px}.logout-list-item{margin-bottom:0!important;margin-top:0!important;padding-bottom:0!important;padding-top:0!important}}.blog-feed{-webkit-overflow-scrolling:touch;flex:1 1;gap:16px;margin-top:16px;overflow-y:auto;padding-right:4px}.blog-feed,.blog-post{display:flex;flex-direction:column}.blog-post{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000f;font-size:.97rem;gap:8px;padding:12px 12px 10px}.blog-post-header{align-items:center;display:flex;gap:12px}.blog-post-cover{background:#f8f5f2;border:1px solid #b7b7a4;border-radius:6px;height:68px;object-fit:cover;width:48px}.blog-post-info{display:flex;flex:1 1;flex-direction:column;gap:2px}.blog-post-title{color:#6b705c;font-size:1.05em;font-weight:700;margin-bottom:2px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.blog-post-meta{align-items:center;color:#a5a58d;display:flex;font-size:.85em;gap:10px}.blog-post-footer{align-items:center;border-top:1px solid #f0f0f0;display:flex;justify-content:space-between;margin-top:8px;padding-top:8px}.blog-post-rating{color:#a5a58d;font-size:.9em}.delete-post-link{background:none;border:none;border-radius:4px;color:#6b705c;cursor:pointer;font-size:.85em;opacity:.7;padding:4px 8px;transition:opacity .2s ease}.delete-post-link:hover{background-color:#f8f5f2;opacity:1;text-decoration:underline}.blog-post-body{color:#6b705c;font-size:.98em;line-height:1.4;margin:4px 0 0;word-break:break-word}.blog-feed-empty,.blog-feed-loading{color:#a5a58d;padding:16px 0;text-align:center}.load-more-container{display:flex;justify-content:center;margin:20px 0;padding:10px}.load-more-button{background-color:#4a90e2;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;padding:10px 20px;transition:background-color .2s ease}.load-more-button:hover{background-color:#357abd}.load-more-button:active{background-color:#2a5f94}@media (max-width:768px){.blog-feed{gap:12px;margin-top:12px;padding-bottom:env(safe-area-inset-bottom,0);padding-right:0}.blog-post{font-size:.93rem;padding:10px}.blog-post-cover{height:60px;width:42px}.blog-post-title{font-size:1em;max-width:160px}.blog-post-body{font-size:.95em;line-height:1.5}}.no-more-posts-message{color:#a5a58d;font-size:1em;margin:18px 0 8px;opacity:.85;text-align:center}.leaderboard-overlay{align-items:center;background:#00000080;display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:1000}.leaderboard-modal{background:#f8f5f2;border:2px solid #b7b7a4;border-radius:15px;box-shadow:0 4px 20px #0003;display:flex;flex-direction:column;font-family:Georgia,serif;max-height:80vh;max-width:500px;padding:25px;position:relative;text-align:center;width:90%}.leaderboard-modal h2{color:#6b705c;flex-shrink:0;font-size:24px;margin-bottom:15px}.close-btn{color:#6b705c;flex-shrink:0;font-size:18px;font-weight:700;right:10px;top:10px}.leaderboard-tabs{border-bottom:2px solid #b7b7a4;display:flex;flex-shrink:0;gap:10px;justify-content:center;margin-bottom:20px;padding-bottom:10px}.tab-btn{background:none;border:none;border-radius:5px;color:#6b705c;cursor:pointer;font-family:Georgia,serif;font-size:16px;padding:8px 16px;transition:all .2s ease}.tab-btn:hover{background-color:#ddbea9;color:#6b705c}.tab-btn.active{background-color:#a5a58d;color:#fff}.leaderboard-list{flex-grow:1;list-style:none;margin:0;max-height:calc(80vh - 150px);overflow-y:auto;padding:0}.leaderboard-item{align-items:center;background-color:#fff;border:1px solid #b7b7a4;border-radius:8px;display:flex;font-family:Georgia,serif;justify-content:space-between;margin-bottom:8px;padding:10px 12px;transition:all .2s ease}.leaderboard-item:hover{background-color:#ddbea9;box-shadow:0 4px 12px #00000026;transform:translateY(-3px)}.rank{align-items:center;color:#a5a58d;display:flex;font-size:16px;font-weight:700;gap:4px;min-width:30px}.crown{filter:drop-shadow(0 2px 2px rgba(0,0,0,.2));font-size:18px;margin-right:2px}.username{color:#6b705c;flex-grow:1;font-weight:600;overflow:hidden;padding-left:10px;text-align:left;text-overflow:ellipsis;white-space:nowrap}.score{color:#6b705c;font-size:16px;font-style:italic;margin-left:10px;min-width:70px;text-align:right}@media (max-width:768px){.leaderboard-overlay{align-items:center;display:flex;justify-content:center;padding:0}.leaderboard-modal{margin:0;max-height:85vh;padding:15px;width:calc(100% - 20px)}.tab-btn{font-size:14px;padding:6px 12px}.leaderboard-item{padding:8px 10px}.rank{min-width:25px}.rank,.score,.username{font-size:14px}.score{min-width:60px}}.bingo-container{align-items:center;animation:spookyBackground 8s ease-in-out infinite;background:linear-gradient(135deg,#1a0d0d,#2d1b1b 25%,#1a0d0d 50%,#0d0d1a 75%,#1a0d0d);background-size:400% 400%;box-sizing:border-box;display:flex;flex-direction:column;font-family:Creepster,Nosifer,Chiller,Arial Black,sans-serif;margin:0 auto;min-height:100vh;overflow:hidden;padding:15px;position:relative;width:100%}.bingo-container:before{background-image:radial-gradient(circle at 20% 80%,#ff8c001a 0,#0000 50%),radial-gradient(circle at 80% 20%,#8000801a 0,#0000 50%),radial-gradient(circle at 40% 40%,#0064001a 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:0}.bingo-content{flex:1 1;flex-direction:column;margin:0 auto;max-width:500px;padding:15px;transition:margin-left .3s ease-in-out;width:100%;z-index:1}.bingo-content,.title{align-items:center;display:flex;position:relative}.title{animation:spookyGlow 2s ease-in-out infinite alternate;color:#ff6b35;font-family:Creepster,Nosifer,Chiller,Arial Black,sans-serif;font-size:36px;font-weight:700;gap:10px;margin-bottom:10px;text-align:center;text-shadow:0 0 10px #ff6b35,0 0 20px #ff6b35,0 0 30px #ff6b35,2px 2px 4px #000}@keyframes spookyGlow{0%{text-shadow:0 0 10px #ff6b35,0 0 20px #ff6b35,0 0 30px #ff6b35,2px 2px 4px #000}to{text-shadow:0 0 15px #ff6b35,0 0 25px #ff6b35,0 0 35px #ff6b35,2px 2px 4px #000}}.title:before{animation:float 3s ease-in-out infinite;content:"🎃";font-size:28px}.title:after{animation:float 3s ease-in-out infinite reverse;content:"👻";font-size:28px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.past-challenge-indicator{align-items:center;color:#8b4513;display:flex;font-family:Creepster,Nosifer,Chiller,Arial Black,sans-serif;font-size:18px;font-weight:700;gap:8px;margin-bottom:15px;text-shadow:1px 1px 2px #000}.past-challenge-indicator:before{animation:skullBob 2s ease-in-out infinite;content:"💀";display:inline-block;font-size:12px}@keyframes skullBob{0%,to{transform:rotate(0deg)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}.historical-badge{background:linear-gradient(45deg,#8b4513,sienna);border:1px solid #654321;border-radius:12px;box-shadow:0 2px 4px #00000080;color:gold;font-size:16px;font-weight:700;padding:6px 12px;text-shadow:1px 1px 2px #000}.grid-selector{margin:0 0 20px;width:auto}.grid-select{background:linear-gradient(135deg,#2d1b1b,#1a0d0d);border:2px solid #ff6b35;border-radius:8px;box-shadow:0 0 10px #ff6b354d;color:gold;cursor:pointer;font-family:Creepster,Nosifer,Chiller,Arial Black,sans-serif;font-size:16px;font-weight:700;min-width:200px;outline:none;padding:8px 12px;text-shadow:1px 1px 2px #000;transition:all .3s;width:auto}.grid-select:hover{border-color:gold;box-shadow:0 0 15px #ff6b3599;transform:scale(1.02)}.grid-select:focus{border-color:gold;box-shadow:0 0 0 2px #ffd70066,0 0 15px #ff6b3599}.info-icon{align-items:center;animation:pulse 2s ease-in-out infinite;background:linear-gradient(135deg,#ff6b35,#ff8c42);border:2px solid gold;border-radius:50%;box-shadow:0 0 10px #ff6b3580;color:#000;cursor:pointer;display:flex;font-size:18px;height:24px;justify-content:center;position:absolute;right:20px;top:20px;width:24px}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.bingo-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr);margin:10px 0;max-width:480px;padding:0 10px;width:100%}.bingo-cell{aspect-ratio:5/7;background:linear-gradient(135deg,#2d1b1b,#1a0d0d 50%,#0d0d1a);border:2px solid #ff6b35;border-radius:12px;box-shadow:0 4px 16px 0 #ff6b354d,0 1px 4px 0 #000c,inset 0 0 20px #80008033;max-width:90px;overflow:hidden;position:relative;transition:all .3s}.bingo-cell:before{background:radial-gradient(circle at 20% 20%,#ff6b351a 0,#0000 50%),radial-gradient(circle at 80% 80%,#8000801a 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}.bingo-cell.selected{animation:selectedGlow 1.5s ease-in-out infinite alternate;background:linear-gradient(135deg,#ff6b35,#ff8c42 50%,orange);border-color:gold;box-shadow:0 0 20px #ff6b35cc,0 0 40px #ffd70066,inset 0 0 20px #fff3}@keyframes selectedGlow{0%{box-shadow:0 0 20px #ff6b35cc,0 0 40px #ffd70066,inset 0 0 20px #fff3}to{box-shadow:0 0 30px #ff6b35,0 0 60px #ffd70099,inset 0 0 30px #ffffff4d}}.bingo-grid.historical{position:relative}.bingo-cell.historical{background:linear-gradient(135deg,#1a0d0d,#0d0d1a);border-color:#8b4513;box-shadow:0 2px 8px #0009;cursor:not-allowed;filter:sepia(.8) hue-rotate(30deg);opacity:.7}.bingo-cell.historical.selected{background:linear-gradient(135deg,#8b4513,sienna);border-color:gold;box-shadow:0 0 15px #ffd70066;filter:sepia(.5) hue-rotate(20deg)}.bingo-cell:after{background:linear-gradient(90deg,#ff6b35 80%,#0000);border-bottom-left-radius:14px;border-top-left-radius:14px;bottom:0;content:"";left:0;opacity:.4;position:absolute;top:0;width:16px;z-index:2}.bingo-cell.selected:before{animation:ghostFloat 2s ease-in-out infinite;content:"👻";font-size:16px;position:absolute;right:2px;top:2px;z-index:4}@keyframes ghostFloat{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-3px) rotate(5deg)}}.bingo-cell p{align-items:center;background:none;bottom:0;box-sizing:border-box;color:gold;cursor:default;display:flex;font-family:Creepster,Nosifer,Chiller,Arial Black,sans-serif;font-size:clamp(10px,1.2vw,14px);font-weight:700;height:100%;justify-content:center;left:0;line-height:1.2;margin:0;padding:8px;position:absolute;right:0;text-align:center;text-shadow:2px 2px 4px #000;top:0;width:100%;word-break:break-word;z-index:3}.bingo-cell.selected p{color:#fff;text-shadow:2px 2px 4px #000,0 0 8px #ff6b35}.bingo-cell:hover{border-color:gold;box-shadow:0 12px 32px 0 #ff6b3566,0 0 20px #8000804d;transform:translateY(-4px) scale(1.03) rotate(-2deg)}.book-title{color:var(--text-color);font-size:.8rem;font-weight:400;margin:.25rem 0}.plus-icon{animation:pulse 2s ease-in-out infinite;bottom:8px;color:#ff6b35;font-size:18px;font-weight:700;position:absolute;text-shadow:1px 1px 2px #000}.plus-icon:before{animation:batFly 3s ease-in-out infinite;content:"🦇";font-size:16px}@keyframes batFly{0%,to{transform:translateX(0)}50%{transform:translateX(5px)}}.search-overlay{align-items:center;background-color:#000000b3;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.search-modal{background:linear-gradient(135deg,#2d1b1b,#1a0d0d);border:2px solid #ff6b35;border-radius:15px;box-shadow:0 4px 20px #0009,0 0 30px #ff6b354d;max-width:600px;padding:30px;position:relative;text-align:center;width:90%;z-index:1100}.search-modal:before{background:radial-gradient(circle at 20% 20%,#ff6b351a 0,#0000 50%),radial-gradient(circle at 80% 80%,#8000801a 0,#0000 50%);border-radius:15px;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:-1}.search-modal h2{color:#ff6b35;font-size:28px;margin-bottom:20px;text-shadow:0 0 10px #ff6b35,2px 2px 4px #000}.search-modal h2,.search-modal input{font-family:Creepster,Nosifer,Chiller,Arial Black,sans-serif;font-weight:700;position:relative;z-index:1}.search-modal input{background:linear-gradient(135deg,#1a0d0d,#0d0d1a);border:2px solid #ff6b35;border-radius:8px;box-shadow:0 0 10px #ff6b354d;color:gold;font-size:18px;margin-bottom:15px;padding:14px;text-shadow:1px 1px 2px #000;width:80%}.search-modal input::placeholder{color:#8b4513;text-shadow:1px 1px 2px #000}.search-modal button{background:linear-gradient(145deg,#ff6b35,#ff8c42);border:2px solid gold;border-radius:12px;box-shadow:0 4px 15px #ff6b3566;color:#000;cursor:pointer;font-family:Creepster,Nosifer,Chiller,Arial Black,sans-serif;font-size:16px;font-weight:700;letter-spacing:.5px;margin:0 5px;padding:14px 28px;position:relative;text-shadow:1px 1px 2px #000;text-transform:uppercase;transition:all .3s ease;z-index:1}.search-modal button:hover{background:linear-gradient(145deg,#ff8c42,#ff6b35);border-color:#fff;box-shadow:0 6px 20px #ff6b3599;transform:translateY(-2px)}.search-modal button:active{box-shadow:0 2px 10px #ff6b3566;transform:translateY(1px)}.search-results{margin-top:20px;max-height:400px;overflow-y:auto;padding:0 10px;text-align:left}.book-result{background:linear-gradient(135deg,#2d1b1b,#1a0d0d);border:2px solid #ff6b35;border-radius:8px;box-shadow:0 2px 8px #0006;display:flex;flex-direction:column;gap:10px;margin-bottom:15px;padding:15px;position:relative;transition:transform .2s ease;z-index:1}.book-result:hover{border-color:gold;box-shadow:0 4px 12px #0006,0 0 15px #ff6b354d;transform:translateY(-3px)}.book-result-content{cursor:pointer;gap:15px;transition:all .2s ease}.book-result-content.processing{opacity:.7;pointer-events:none;position:relative}.book-result-content.processing:after{animation:spin .8s linear infinite;border:2px solid #a5a58d;border-radius:50%;border-top-color:#0000;content:"";height:20px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:20px}@keyframes spin{to{transform:translate(-50%,-50%) rotate(1turn)}}.book-result img{border:2px solid #ff6b35;border-radius:4px;box-shadow:0 2px 4px #0006;height:120px;object-fit:cover;width:80px}.book-info{text-align:left}.book-info h3{color:#ff6b35;font-family:Creepster,Nosifer,Chiller,Arial Black,sans-serif;font-size:18px;font-weight:700;margin:0 0 8px;text-shadow:1px 1px 2px #000}.book-info p{color:gold}.book-info p,.view-book-btn{font-size:16px;font-weight:700;text-shadow:1px 1px 2px #000}.view-book-btn{align-self:flex-end;background:linear-gradient(145deg,#ff6b35,#ff8c42);border:2px solid gold;border-radius:12px;box-shadow:0 4px 15px #ff6b3566;color:#000;cursor:pointer;font-family:Creepster,Nosifer,Chiller,Arial Black,sans-serif;letter-spacing:.5px;padding:10px 20px;text-transform:uppercase;transition:all .3s ease}.view-book-btn:hover{background:linear-gradient(145deg,#ff8c42,#ff6b35);border-color:#fff;box-shadow:0 6px 20px #ff6b3599;transform:translateY(-2px)}.view-book-btn:active{box-shadow:0 2px 10px #ff6b3566;transform:translateY(1px)}.no-results{color:var(--text-secondary);font-size:.9rem;text-align:center}.search-modal button:last-child{background:linear-gradient(145deg,#8b0000,brown);border-color:#ff6b35}.search-modal button:last-child:hover{background:linear-gradient(145deg,brown,#8b0000);border-color:gold}.top-buttons{display:flex;gap:10px;justify-content:center;margin-bottom:20px;max-width:600px;padding:0 10px;width:100%}.top-buttons a{background:linear-gradient(145deg,#ff6b35,#ff8c42);border:2px solid gold;border-radius:8px;box-shadow:0 4px 15px #ff6b3566;color:#000;flex:1 1;font-family:Creepster,Nosifer,Chiller,Arial Black,sans-serif;font-size:16px;font-weight:700;letter-spacing:.5px;max-width:200px;padding:12px 24px;text-align:center;text-decoration:none;text-shadow:1px 1px 2px #000;text-transform:uppercase;transition:all .2s ease}.top-buttons a:hover{background:linear-gradient(145deg,#ff8c42,#ff6b35);border-color:#fff;box-shadow:0 6px 20px #ff6b3599;transform:translateY(-2px)}.leaderboard-btn-container{display:flex;gap:12px;justify-content:center;margin-top:15px;max-width:480px;width:100%}.leaderboard-btn,.reset-grid-btn{border:none;border-radius:10px;box-shadow:0 2px 8px #a5a58d26;color:#fff;cursor:pointer;flex:1 1;font-size:14px;letter-spacing:.3px;max-width:110px;padding:8px 0;text-transform:uppercase;transition:all .3s ease}.leaderboard-btn,.reset-grid-btn{font-family:Creepster,Nosifer,Chiller,Arial Black,sans-serif;font-weight:700}.leaderboard-btn{background:linear-gradient(145deg,#ff6b35,#ff8c42);border:2px solid gold;color:#000;text-shadow:1px 1px 2px #000}.leaderboard-btn:hover{background:linear-gradient(145deg,#ff8c42,#ff6b35);border-color:#fff;box-shadow:0 6px 20px #ff6b3599;transform:translateY(-2px)}.leaderboard-btn:active{box-shadow:0 2px 10px #ff6b3566;transform:translateY(1px)}.reset-grid-btn{background:linear-gradient(145deg,#8b0000,brown);border:2px solid #ff6b35;color:#fff;font-family:Creepster,Nosifer,Chiller,Arial Black,sans-serif;font-weight:700;text-shadow:1px 1px 2px #000}.reset-grid-btn:hover{background:linear-gradient(145deg,brown,#8b0000);border-color:gold;box-shadow:0 6px 20px #8b000099;transform:translateY(-2px)}.reset-grid-btn:active{box-shadow:0 2px 10px #8b000066;transform:translateY(1px)}.reset-grid-btn:disabled{background:linear-gradient(145deg,#8b000080,#a52a2a80);border-color:#8b4513;box-shadow:none;cursor:not-allowed;transform:none}.points-tracker{align-items:center;background:linear-gradient(145deg,#2d1b1b,#1a0d0d);border:2px solid #ff6b35;border-radius:20px;box-shadow:0 4px 15px #ff6b3566;color:gold;display:inline-flex;font-family:Creepster,Nosifer,Chiller,Arial Black,sans-serif;font-size:18px;font-weight:700;gap:8px;margin:0 auto 15px;overflow:hidden;padding:10px 24px;position:relative;text-align:center;text-shadow:1px 1px 2px #000;width:auto}.points-tracker:before{animation:float 3s ease-in-out infinite;content:"🎃";filter:drop-shadow(0 0 2px rgba(255,107,53,.8));font-size:18px}.points-value{color:#ff6b35;display:inline-block;font-weight:700;margin-left:5px;position:relative;text-shadow:0 0 5px #ff6b35cc}.points-value.animate{animation:pointsPop .5s ease-out}@keyframes pointsPop{0%{text-shadow:0 0 5px #ff6b35cc;transform:scale(1)}50%{color:gold;text-shadow:0 0 15px #ff6b35;transform:scale(1.3)}to{text-shadow:0 0 5px #ff6b35cc;transform:scale(1)}}.points-tracker:after{animation:shine 2s infinite;background:linear-gradient(45deg,#0000,#fffc,#0000);content:"";height:200%;left:-50%;pointer-events:none;position:absolute;top:-50%;transform:rotate(45deg);width:200%}@keyframes shine{0%{opacity:0;transform:translateX(-100%) rotate(45deg)}20%{opacity:1}40%{opacity:0}to{opacity:0;transform:translateX(100%) rotate(45deg)}}.points-tracker:has(.days-left){background:linear-gradient(145deg,#2d1b1b,#1a0d0d)}.points-tracker:has(.days-left):before{animation:float 3s ease-in-out infinite;content:"⏰";filter:drop-shadow(0 0 2px rgba(255,107,53,.8))}.days-left{color:#ff6b35;font-weight:700;text-shadow:0 0 5px #ff6b35cc}@media (max-width:1200px){.bingo-content{margin-left:0}}@media (max-width:768px){.bingo-container{box-sizing:border-box;margin:0;padding:8px;width:100%}.bingo-content{margin:50px 0 0;max-width:100%;padding:8px;width:100%}.title{font-size:24px;margin-bottom:8px}.points-tracker{font-size:14px;margin-bottom:8px;padding:5px 10px}.bingo-grid{gap:8px;margin:8px auto;max-width:460px;padding:0;width:100%}.bingo-cell p{font-size:clamp(10px,2vw,13px);padding:4px}.search-modal{padding:20px}.top-buttons{gap:10px;margin-bottom:10px;margin-left:auto;margin-right:auto;max-width:500px;padding:0}.top-buttons a{font-size:12px;letter-spacing:.3px;max-width:none;padding:6px 0;width:50%}.leaderboard-btn,.reset-grid-btn{font-size:11px;max-width:90px;padding:5px 0}.search-modal button{font-size:12px;padding:8px 12px}.view-book-btn{font-size:12px;padding:6px 10px}.leaderboard-btn-container,.top-buttons{margin-left:auto;margin-right:auto;max-width:460px;padding:0;width:100%}}@media (max-width:375px){.bingo-container{margin:0;padding:6px;width:100%}.bingo-grid{gap:6px;max-width:440px;padding:0}.title{font-size:22px;margin-bottom:6px}.top-buttons{gap:10px;padding:0 10px}.top-buttons a{font-size:11px;letter-spacing:.3px;padding:6px 0}.leaderboard-btn,.reset-grid-btn{font-size:10px;max-width:70px;padding:4px 0}.search-modal button{font-size:11px;padding:6px 12px}.view-book-btn{font-size:11px;padding:5px 10px}.leaderboard-btn-container,.top-buttons{max-width:440px}.bingo-cell p{font-size:clamp(10px,2.5vw,14px);padding:4px}}.blog-review-modal-overlay{align-items:center;background:#00000073;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.blog-review-modal{background:#fff;border-radius:16px;box-shadow:0 6px 32px #0000002e;display:flex;flex-direction:column;gap:18px;max-width:380px;padding:32px 24px 24px;position:relative;width:95vw}.close-btn{background:none;border:none;color:#a5a58d;cursor:pointer;font-size:1.7rem;position:absolute;right:18px;top:14px;z-index:2}.modal-header{align-items:center;display:flex;gap:16px;margin-bottom:8px}.modal-book-cover{background:#f8f5f2;border:1.5px solid #b7b7a4;border-radius:8px;height:76px;object-fit:cover;width:54px}.modal-book-title{color:#6b705c;font-size:1.1rem;font-weight:700}label{font-weight:600;margin-bottom:6px}label,textarea{color:#6b705c;display:block}textarea{background:#f8f5f2;border:1.5px solid #b7b7a4;border-radius:8px;font-family:inherit;font-size:1rem;margin:0 auto 10px;min-height:70px;padding:10px;resize:vertical;width:90%}.modal-rating{align-items:center;display:flex;gap:6px;margin-bottom:10px}.star{color:#b7b7a4;font-size:1.5rem;transition:color .2s;-webkit-user-select:none;user-select:none}.star.filled{color:#a5a58d}.modal-actions{gap:12px;margin-top:8px}.modal-actions button{background:#a5a58d;border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:1rem;font-weight:700;padding:10px 0;transition:background .2s,transform .15s}.modal-actions button:disabled{background:#b7b7a4;cursor:not-allowed}.skip-btn{background:#b7b7a4;color:#fff}@media (max-width:600px){.blog-review-modal{max-width:98vw;padding:18px 6vw}.modal-header{gap:10px}.modal-book-cover{height:56px;width:40px}}.register-container{background-color:#f8f5f2;font-family:Georgia,serif;min-height:100vh;padding:40px}.register-container,.register-form{align-items:center;display:flex;flex-direction:column}.register-form{background-color:#fff;border:2px solid #b7b7a4;border-radius:8px;box-shadow:0 2px 10px #0000001a;box-sizing:border-box;max-width:400px;padding:20px;width:90%}.register-form h2{color:#6b705c;font-size:24px;font-weight:700;margin-bottom:20px;text-align:center}.register-form label{color:#6b705c;font-size:16px;margin-bottom:12px;text-align:left;width:100%}.register-form input{background-color:#f8f5f2;border:1px solid #b7b7a4;border-radius:4px;box-sizing:border-box;font-size:14px;margin-bottom:16px;margin-top:6px;padding:10px;transition:border-color .3s ease;width:100%}.register-form input:focus{border-color:#a5a58d;outline:none}.register-form button{background-color:#a5a58d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;margin-top:10px;padding:12px 20px;transition:background-color .3s ease;width:100%}.register-form button:hover{background-color:#b7b7a4}.register-form p{color:#6b705c;font-size:14px;margin-top:20px;text-align:center}.register-form link{color:#a5a58d;font-weight:700;text-decoration:none}.register-form link:hover{text-decoration:underline}.error-message{color:#ddbea9;font-size:14px;margin-bottom:10px;text-align:left}.login-container{align-items:center;background-color:#f8f5f2;display:flex;flex-direction:column;font-family:Georgia,serif;min-height:100vh;padding:40px}.login-content{background-color:#fff;border:2px solid #b7b7a4;border-radius:8px;box-shadow:0 2px 10px #0000001a;box-sizing:border-box;max-width:400px;padding:20px;width:90%}.login-form input{background-color:#f8f5f2;border:1px solid #b7b7a4;border-radius:4px;box-sizing:border-box;font-size:14px;margin-bottom:16px;margin-top:6px;padding:10px;transition:border-color .3s ease;width:100%}.access-denied{align-items:center;background-color:#f5f5f5;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:20px;text-align:center}.access-denied h2{color:#f44;margin-bottom:20px}.access-denied p{color:#666;font-size:1.1em;margin:10px 0}.recaptcha-container{display:flex;justify-content:center;margin:20px 0}.forgot-password-link{color:#007bff;display:block;font-size:.9em;margin:10px 0;text-align:center;text-decoration:none}.forgot-password-link:hover{text-decoration:underline}.back-to-login{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:10px;padding:10px;width:100%}.back-to-login:hover{background-color:#5a6268}.profile-page{align-items:center;background-color:#f8f5f2;display:flex;flex-direction:column;font-family:Georgia,serif;gap:30px;margin:0 auto;max-width:1200px;min-height:100vh;padding:20px;position:relative}.profile-card{background:#fff;background-color:#fff;border:2px solid #b7b7a4;border-radius:15px;box-shadow:0 4px 20px #0000001a;max-width:400px;padding:60px 30px 30px;position:relative;text-align:center;transition:transform .2s ease;width:100%}.profile-card:hover{box-shadow:0 6px 25px #00000026;transform:translateY(-5px)}.profile-pic{border:4px solid #a5a58d;border-radius:50%;box-shadow:0 4px 10px #0000001a;height:180px;margin-bottom:20px;margin-top:20px;object-fit:cover;width:180px}h2{font-family:Georgia,serif;font-size:24px}h2,p{color:#6b705c;margin:15px 0}p{font-style:italic;line-height:1.6}button{background-color:#a5a58d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;letter-spacing:.5px;margin:8px 0;padding:12px 24px;text-transform:uppercase;transition:all .2s ease}button:hover{background-color:#b7b7a4;box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.edit-btn{background-color:#a5a58d}.edit-btn:hover{background-color:#b7b7a4}.add-btn{background-color:#a5a58d}.add-btn:hover{background-color:#b7b7a4}.remove-btn{background-color:#ddbea9;font-size:12px;padding:6px 12px}.logout-btn{background-color:#b7b7a4;margin-top:20px;max-width:200px;width:100%}.books-section,.friends-section{background:#fff;background-color:#fff;border:2px solid #b7b7a4;border-radius:15px;box-shadow:0 4px 20px #0000001a;max-width:600px;padding:25px;width:100%}h3{border-bottom:2px solid #b7b7a4;color:#6b705c;font-family:Georgia,serif;font-size:20px;margin-bottom:20px;padding-bottom:10px}ul{list-style:none;padding:0}li{align-items:center;border:1px solid #b7b7a4;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:15px;padding:12px;transition:all .2s ease}li,li:hover{background-color:#fff}li:hover{transform:translateX(5px)}.friend-item{align-items:center;background-color:#fff;border-left:4px solid #a5a58d;border-radius:8px;display:flex;justify-content:space-between;margin:8px 0;padding:15px}.friend-item.pending{background-color:#ffe8d6;border-left-color:#a5a58d}.friend-info{display:flex;flex-direction:column;gap:6px}.friend-name{color:#6b705c;font-weight:600}.friend-email,.friend-status{color:#6b705c;font-size:.9em}.friend-status{font-style:italic}.friend-actions{display:flex;gap:10px}.friend-actions button{font-size:13px;padding:8px 16px}.accept-btn{background-color:#a5a58d}.reject-btn{background-color:#ddbea9}.stats-container{background-color:#f8f5f2;border:1px solid #b7b7a4;border-radius:10px;display:flex;justify-content:space-around;margin:20px 0;padding:15px}.stat-item{align-items:center;display:flex;flex-direction:column;min-width:80px;padding:10px}.stat-value{color:#6b705c;font-size:24px;font-weight:700;margin-bottom:5px}.stat-label{color:#6b705c;font-size:14px;text-align:center}.modal-overlay{background-color:#00000080;bottom:0;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content,.modal-overlay{align-items:center;display:flex;overflow-y:auto}.modal-content{background:#fff;border:2px solid #b7b7a4;border-radius:15px;box-shadow:0 4px 20px #0003;flex-direction:column;margin:auto;max-height:90vh;max-width:500px;padding:30px;width:90%}.modal-content h3{border-bottom:1px solid #e8d5c4;font-size:24px;padding-bottom:10px;width:100%}.modal-content h3,.modal-content p{color:#6b705c;margin-bottom:25px;text-align:center}.modal-content p{font-size:16px}.form-group{align-items:center;display:flex;flex-direction:column;margin-bottom:20px;max-width:400px;width:100%}.form-group label{align-self:flex-start;color:#6b705c;display:block;font-size:16px;font-weight:500;margin-bottom:10px}.form-group input,.form-group textarea{background-color:#fff;border:2px solid #e8d5c4;border-radius:8px;color:#2c3e50;font-family:inherit;font-size:16px;padding:12px;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#a5a58d;box-shadow:0 0 0 2px #a5a58d33;outline:none}.form-group textarea{min-height:100px;resize:vertical}.profile-picture-upload{align-items:center;display:flex;flex-direction:column;gap:15px}.profile-picture-preview{background-color:#f8f5f2;border:3px solid #e8d5c4;box-shadow:0 4px 10px #0000001a;height:120px;width:120px}.file-input{display:none}.file-input-label{background-color:#a5a58d;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;letter-spacing:.5px;padding:10px 20px;transition:all .2s ease}.file-input-label:hover{background-color:#b7b7a4;box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.modal-actions{display:flex;gap:15px;justify-content:center;margin-top:20px;width:100%}.modal-actions button{font-weight:600;letter-spacing:1px;min-width:120px}.modal-actions .cancel-btn{background-color:#b7b7a4;opacity:.9}.modal-actions .cancel-btn:hover{background-color:#a5a58d;opacity:1}@media (max-width:768px){.profile-page{padding:15px}.books-section,.friends-section,.profile-card{padding:20px}.profile-pic{height:150px;width:150px}.friend-actions{flex-direction:column}.friend-actions button{width:100%}.stats-container{flex-direction:column;gap:15px}.stat-item{background-color:#fff;border:1px solid #b7b7a4;border-radius:8px;padding:10px}.modal-content{max-height:85vh;padding:20px}.modal-actions{background:#fff;border-top:1px solid #b7b7a4;bottom:0;margin-top:20px;padding:15px 0;position:sticky;width:100%}.modal-actions button{width:100%}}.profile-tabs{background-color:#fff9f5;border:2px solid #e8d5c4;border-radius:10px;box-shadow:0 2px 10px #0000001a;display:flex;justify-content:center;margin:20px 0;max-width:600px;padding:10px;width:100%}.tab-button{background-color:initial;border:none;border-radius:8px;color:#666;cursor:pointer;font-family:inherit;font-weight:600;letter-spacing:.5px;margin:0 5px;padding:12px 20px;text-transform:uppercase;transition:all .2s ease}.tab-button:hover{background-color:#f0e6e0;color:#2c3e50;transform:translateY(-2px)}.tab-button.active{background-color:#d4a373;box-shadow:0 2px 8px #00000026;color:#fff}.stats-section{background:#fff;background-color:#fff9f5;border:2px solid #e8d5c4;border-radius:15px;box-shadow:0 4px 20px #0000001a;max-width:600px;padding:25px;width:100%}.stats-detail{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-top:20px}.stat-detail-item{background-color:#f8f5f2;border:1px solid #e8d5c4;border-radius:12px;padding:20px;text-align:center;transition:transform .2s ease}.stat-detail-item:hover{box-shadow:0 6px 15px #0000001a;transform:translateY(-5px)}.stat-detail-item h4{border-bottom:1px solid #e8d5c4;color:#2c3e50;font-size:18px;margin-bottom:15px;padding-bottom:10px}.stat-number{font-size:36px}.stat-number,.stat-text{color:#d4a373;font-weight:700;margin:10px 0}.stat-text{font-size:20px;font-style:italic}.stat-detail-item p{color:#666;font-size:14px;margin-top:10px}@media (max-width:768px){.profile-tabs{flex-direction:column;padding:5px}.tab-button{margin:5px 0;width:100%}.stats-detail{grid-template-columns:1fr}}.pagination{flex-wrap:wrap;gap:8px;margin-top:25px}.page-btn,.pagination{display:flex;justify-content:center}.page-btn{align-items:center;background-color:#f8f5f2;border:1px solid #e8d5c4;border-radius:50%;color:#666;cursor:pointer;font-size:16px;height:40px;padding:0;transition:all .2s ease;width:40px}.page-btn:hover{background-color:#e8d5c4;color:#2c3e50;transform:translateY(-2px)}.page-btn.active{background-color:#d4a373;border-color:#d4a373;box-shadow:0 2px 8px #00000026;color:#fff}@media (max-width:480px){.page-btn{font-size:14px;height:36px;width:36px}}.profile-container{align-items:center;background-color:#f8f5f2;display:flex;flex-direction:column;min-height:100vh;padding:20px;position:relative}.back-button{align-items:center;background-color:#a5a58d;border:2px solid #b7b7a4;border-radius:5px;color:#fff;cursor:pointer;display:flex;font-size:.8rem;gap:4px;padding:6px 12px;position:absolute;right:20px;text-decoration:none;top:20px;transition:background-color .2s ease;white-space:nowrap;width:fit-content;z-index:1}.back-button:hover{background-color:#b7b7a4}.books-read-section,.want-to-read-section{background:#fff;border:2px solid #b7b7a4;border-radius:15px;box-shadow:0 4px 20px #0000001a;margin-bottom:20px;max-width:900px;padding:20px;position:relative;width:100%}.books-grid{-webkit-overflow-scrolling:touch;display:flex;gap:20px;margin:0 -20px;overflow-x:auto;padding:20px 50px;scroll-snap-type:x mandatory}.book-card{border:1px solid #b7b7a4;border-radius:12px;box-shadow:0 2px 10px #0000001a;flex:0 0 auto;flex-direction:column;gap:10px;min-width:220px;padding:15px;scroll-snap-align:start;transition:transform .2s ease;width:220px}.book-card:hover{box-shadow:0 4px 15px #00000026}.book-card img{border:1px solid #b7b7a4;border-radius:8px;height:300px;object-fit:cover;width:100%}.book-info{gap:5px;padding:10px 0}.book-info h4{color:#6b705c;font-size:16px;font-weight:600;margin:0}.book-info p{color:#6b705c;font-size:14px;font-style:italic;margin:0}.added-date{color:#888;font-size:12px;font-style:italic}.remove-button{background-color:#ffffffe6;border:none;border-radius:4px;color:#f44336;cursor:pointer;font-size:12px;padding:5px 10px;position:absolute;right:10px;top:10px;transition:background-color .2s ease;z-index:1}.remove-button:hover{background-color:#fff}.scroll-indicator{align-items:center;background:#ffffffe6;border:1px solid #b7b7a4;border-radius:50%;box-shadow:0 2px 10px #0000001a;cursor:pointer;display:flex;height:40px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .2s ease;width:40px;z-index:2}.scroll-indicator:hover{background:#fff;transform:translateY(-50%) scale(1.1)}.scroll-left{left:5px}.scroll-right{right:5px}.want-to-read-section .pagination{display:none}.profile-picture-selector{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));justify-content:center;margin:20px 0;max-width:600px}.profile-picture-option{align-items:center;cursor:pointer;display:flex;flex-direction:column;gap:8px;transition:all .3s ease}.profile-picture-preview{border:3px solid #0000;border-radius:50%;height:100px;object-fit:cover;transition:all .3s ease;width:100px}.profile-picture-option:hover .profile-picture-preview{border-color:#a5a58d;transform:scale(1.05)}.profile-picture-option.selected .profile-picture-preview{border-color:#a5a58d;box-shadow:0 0 10px #a5a58d4d}.profile-picture-name{color:#6b705c;font-size:14px;max-width:100px;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}@media (max-width:768px){.profile-picture-selector{gap:15px;grid-template-columns:repeat(2,1fr)}.profile-picture-preview{height:80px;width:80px}.profile-picture-name{font-size:12px}}.rating-section{align-items:center;display:flex;flex-direction:column;margin-top:10px}.rating-stars{display:flex;gap:5px}.star{color:#ccc;cursor:pointer;font-size:20px;transition:color .2s ease}.book-card:hover .star,.star.filled,.star:hover{color:gold}.book-card:hover .star:hover~.star,.star:hover~.star{color:#ccc}.rating-section p{color:#6b705c;font-size:14px;margin:5px 0}.profile-logout-btn{background:#6b705c;border:none;border-radius:8px;bottom:32px;box-shadow:0 2px 8px #00000014;color:#fff;cursor:pointer;font-family:Georgia,serif;font-size:1rem;font-weight:700;padding:10px 28px;position:fixed;right:32px;transition:background .2s,transform .15s;z-index:10}.profile-logout-btn:hover{background:#a5a58d;color:#fff;transform:translateY(-2px) scale(1.04)}@media (max-width:768px){.profile-logout-btn{bottom:12px;font-size:.95rem;padding:8px 16px;right:12px}}.book-page{align-items:center;animation:spookyBackground 8s ease-in-out infinite;background:linear-gradient(135deg,#1a0d0d,#2d1b1b 25%,#1a0d0d 50%,#0d0d1a 75%,#1a0d0d);background-size:400% 400%;display:flex;flex-direction:column;font-family:Creepster,Nosifer,Chiller,Arial Black,sans-serif;gap:30px;margin:0 auto;max-width:1200px;min-height:100vh;overflow:hidden;padding:20px;position:relative}@keyframes spookyBackground{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.book-page:before{background-image:radial-gradient(circle at 20% 80%,#ff8c001a 0,#0000 50%),radial-gradient(circle at 80% 20%,#8000801a 0,#0000 50%),radial-gradient(circle at 40% 40%,#0064001a 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:0}.book-page .book-card{background:linear-gradient(135deg,#2d1b1b,#1a0d0d);border:2px solid #ff6b35;border-radius:15px;box-shadow:0 4px 20px #0009,0 0 30px #ff6b354d;max-width:1100px;padding:30px;position:relative;text-align:left;transition:transform .2s ease;width:100%;z-index:1}.book-page .book-card:hover{border-color:gold;box-shadow:0 6px 25px #0009,0 0 40px #ff6b3580;transform:translateY(-5px)}.book-header{border-bottom:2px solid #ff6b35;display:flex;gap:30px;margin-bottom:30px;padding-bottom:20px;position:relative;z-index:1}.book-page .book-cover{background-color:#1a0d0d;border:4px solid #ff6b35;border-radius:8px;box-shadow:0 4px 10px #0006;height:300px;object-fit:contain;padding:10px;position:relative;width:200px;z-index:1}.book-info h2{color:#ff6b35;font-family:Creepster,Nosifer,Chiller,Arial Black,sans-serif;font-size:32px;margin:0 0 15px;text-shadow:0 0 10px #ff6b35,2px 2px 4px #000}.authors,.book-info h2{font-weight:700;position:relative;z-index:1}.authors{font-size:20px;margin-bottom:10px}.authors,.published-date{color:gold;text-shadow:1px 1px 2px #000}.published-date{font-size:18px;font-weight:700;line-height:1.5;margin:10px 0;position:relative;z-index:1}.release-date{display:block;margin-top:5px}.book-details{margin-top:20px}.book-details h3{border-bottom:2px solid #ff6b35;color:#ff6b35;font-family:Creepster,Nosifer,Chiller,Arial Black,sans-serif;font-size:24px;margin:25px 0 15px;padding-bottom:10px}.book-details h3,.book-details p{font-weight:700;position:relative;text-shadow:1px 1px 2px #000;z-index:1}.book-details p{color:gold;font-size:18px;line-height:1.6;margin-bottom:20px}.book-details ul{list-style:none;padding:0}.book-details li{background:linear-gradient(135deg,#2d1b1b,#1a0d0d);border:2px solid #ff6b35;border-radius:8px;box-shadow:0 2px 8px #0006;display:flex;margin-bottom:12px;padding:12px;position:relative;z-index:1}.book-details li strong{color:#ff6b35;font-weight:700;margin-right:10px;min-width:100px;text-shadow:1px 1px 2px #000}.book-actions{display:flex;justify-content:flex-end;margin-top:30px}.book-actions button{background:linear-gradient(145deg,#ff6b35,#ff8c42);border:2px solid gold;border-radius:8px;box-shadow:0 4px 15px #ff6b3566;color:#000;cursor:pointer;font-family:Creepster,Nosifer,Chiller,Arial Black,sans-serif;font-size:16px;font-weight:700;letter-spacing:.5px;padding:14px 28px;position:relative;text-shadow:1px 1px 2px #000;text-transform:uppercase;transition:all .2s ease;z-index:1}.book-actions button:hover{background:linear-gradient(145deg,#ff8c42,#ff6b35);border-color:#fff;box-shadow:0 6px 20px #ff6b3599;transform:translateY(-2px)}.loading-spinner{align-items:center;color:#ff6b35;display:flex;font-family:Creepster,Nosifer,Chiller,Arial Black,sans-serif;font-size:20px;font-weight:700;justify-content:center;min-height:200px;position:relative;text-shadow:1px 1px 2px #000;z-index:1}@media (max-width:768px){.book-header{align-items:center;flex-direction:column;text-align:center}.book-cover{height:225px;width:150px}.book-card{padding:20px}.book-details li{flex-direction:column;gap:5px}.book-details li strong{min-width:auto}}.book-recommendation{background:#f8f5f2;font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif;margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem}.recommendation-back-button,.refresh-button{border-radius:6px!important;display:inline-block!important;font-size:.8rem!important;font-weight:500!important;margin-left:auto;margin-right:auto;max-width:none!important;min-width:0!important;padding:.3rem .8rem!important;width:auto!important}.recommendation-back-button{background:#a5a58d;border:none;box-shadow:0 2px 5px #0000001a;color:#fff;cursor:pointer;margin:0 0 1rem;transition:all .3s ease}.recommendation-back-button:hover{background:#b7b7a4;box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.book-card{background:#fff;border:2px solid #a5a58d;border-radius:20px;box-shadow:0 10px 20px #0000001a;display:flex;gap:2rem;margin:2rem auto;max-width:800px;min-height:400px;overflow:hidden;padding:2rem;position:relative;transition:all .3s ease}.book-card:hover{box-shadow:0 15px 30px #00000026;transform:translateY(-5px)}.book-cover,.overlay-book-cover{background:#f0f0f0;border:2px solid #a5a58d;border-radius:10px;box-shadow:0 5px 15px #0003;height:300px;min-width:200px;object-fit:cover;transition:transform .3s ease;width:200px}.book-cover:hover{transform:scale(1.05)}.book-info{display:flex;flex:1 1;flex-direction:column;justify-content:center;min-width:0}.book-info h2{word-wrap:break-word;font-size:2rem;font-weight:600}.book-info h2,.book-info h3{color:#6b705c;font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif;margin-bottom:1rem}.book-info h3{font-size:1.5rem;font-weight:500}.genre{background:#e9edc9;border-radius:15px;display:inline-block;font-size:.9rem;margin-bottom:1rem;padding:.5rem 1rem}.genre,.rating{color:#6b705c;font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif}.rating{font-size:1.1rem;margin-top:1rem}.swipe-buttons{bottom:2rem;gap:2rem;margin-top:2rem;position:sticky;z-index:10}.swipe-button,.swipe-buttons{display:flex;justify-content:center}.swipe-button{align-items:center;border:none;border-radius:50%;box-shadow:0 5px 15px #0003;cursor:pointer;font-size:2rem;height:70px;padding:0;transition:all .3s ease;width:70px}.swipe-button.dislike,.swipe-button.like{background:#a5a58d;color:#fff}.swipe-button:hover{background:#b7b7a4;box-shadow:0 8px 20px #0000004d;transform:scale(1.1)}.swipe-button:disabled{background:#b7b7a4;cursor:not-allowed;opacity:.7;transform:none}.onboarding-content{background:#fff;border:2px solid #a5a58d;border-radius:20px;box-shadow:0 10px 20px #0000001a;padding:2rem;position:relative}.onboarding-content h2{color:#6b705c;font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:2rem;margin-bottom:1.5rem;text-align:center}.onboarding-content .recommendation-back-button{margin:0;position:absolute;right:1.5rem;top:1.5rem;z-index:2}.search-section{margin:2rem 0}.search-input{border:2px solid #a5a58d;border-radius:15px;box-sizing:border-box;font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1rem;margin:0;padding:1rem;transition:all .3s ease;width:100%}.search-input:focus{border-color:#b7b7a4;box-shadow:0 0 0 3px #a5a58d1a;outline:none}.search-results{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:2rem}.search-result-card{background:#fff;border:1px solid #b7b7a4;border-radius:12px;box-shadow:0 2px 10px #0000001a;display:flex;flex-direction:column;gap:10px;padding:15px;position:relative;transition:transform .2s ease,box-shadow .2s ease}.search-result-card:hover{box-shadow:0 4px 15px #00000026;transform:translateY(-5px)}.book-result-content{align-items:flex-start;display:flex;gap:10px}.book-result-content img.book-cover{background:#fff;border:1px solid #b7b7a4;border-radius:8px;box-shadow:0 2px 4px #0000001a;height:150px;object-fit:cover;width:100px}.book-result-content .book-info{display:flex;flex:1 1;flex-direction:column;gap:5px;padding:10px 0;text-align:left}.book-result-content .book-info h3{font-size:16px;font-weight:600}.book-result-content .book-info h3,.book-result-content .book-info p{color:#6b705c;font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif;margin:0}.book-result-content .book-info p{font-size:14px;font-style:italic}.add-book-button{border-radius:8px;font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;font-weight:600;letter-spacing:.5px;margin-top:10px;padding:8px 0;text-transform:uppercase;width:100%}.added-books{margin-top:3rem}.added-books h3{color:#6b705c;font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1.5rem;margin-bottom:1.5rem}.added-books-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.added-book-card{background:#fff;border:2px solid #a5a58d;border-radius:15px;box-shadow:0 5px 15px #0000001a;padding:1rem;text-align:center;transition:all .3s ease}.added-book-card:hover{box-shadow:0 8px 20px #00000026;transform:translateY(-5px)}.added-book-card img{border:2px solid #a5a58d;border-radius:10px;height:200px;margin-bottom:1rem;object-fit:cover;width:100%}.added-book-card p{color:#6b705c;font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:.9rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty,.error,.loading{background:#fff;border:2px solid #a5a58d;border-radius:20px;box-shadow:0 10px 20px #0000001a;margin-top:2rem;padding:3rem;text-align:center}.empty h2,.error h2,.loading h2{color:#6b705c;font-size:2rem;margin-bottom:1.5rem}.empty button,.empty h2,.error button,.error h2,.loading h2{font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif}.empty button,.error button{background:#a5a58d;border:none;border-radius:25px;color:#fff;cursor:pointer;font-size:1rem;padding:1rem 2rem;transition:all .3s ease}.empty button:hover,.error button:hover{background:#b7b7a4;transform:translateY(-2px)}.swipe-right{animation:swipeRight .3s ease-out}.swipe-left{animation:swipeLeft .3s ease-out}@keyframes swipeRight{0%{transform:translateX(0) rotate(0)}to{opacity:0;transform:translateX(150%) rotate(30deg)}}@keyframes swipeLeft{0%{transform:translateX(0) rotate(0)}to{opacity:0;transform:translateX(-150%) rotate(-30deg)}}@media (max-width:768px){.book-card{align-items:center;flex-direction:column;margin:1rem;min-height:350px;padding:1rem;text-align:center}.book-cover{height:225px;margin-bottom:1rem;min-width:150px;width:150px}.book-info{align-items:center;width:100%}.book-info h2{font-size:1.5rem}.book-info h3{font-size:1.2rem}.swipe-buttons{background:#ffffffe6;bottom:1rem;left:0;margin:0;padding:1rem;position:fixed;right:0}.swipe-button{font-size:1.5rem;height:60px;width:60px}.search-results{grid-template-columns:1fr}.added-books-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.onboarding-content .recommendation-back-button{font-size:.8rem;padding:.3rem .8rem;right:.5rem;top:.5rem}.onboarding-content{padding:1rem}.search-result-card{padding:10px}.book-result-content img.book-cover{height:105px;width:70px}.book-result-content .book-info h3{font-size:14px}.book-result-content .book-info p{font-size:12px}.add-book-button{font-size:12px;padding:6px 0}.refresh-button{font-size:.85rem}.recommendation-back-button,.refresh-button{border-radius:8px;display:block;margin-left:auto;margin-right:auto;max-width:250px;width:auto}.recommendation-back-button{font-size:.8rem}}.book-overlay{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.book-overlay-content{background-color:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;max-height:90vh;max-width:90%;overflow-y:auto;padding:2rem;position:relative;width:600px}.close-overlay{background:none;border:none;color:#666;cursor:pointer;font-size:1.5rem;line-height:1;padding:.5rem;position:absolute;right:1rem;top:1rem}.close-overlay:hover{color:#333}.overlay-book-header{display:flex;gap:2rem;margin-bottom:2rem}.overlay-book-cover{border-radius:8px;box-shadow:0 2px 4px #0000001a;height:auto;width:150px}.overlay-book-info{flex:1 1}.overlay-book-info h2{font-size:1.5rem}.overlay-book-info h2,.overlay-book-info h3{font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif;margin:0 0 .5rem}.overlay-book-info h3{color:#666;font-size:1.2rem}.overlay-book-info .genre{color:#888}.overlay-book-info .genre,.overlay-book-info .rating{font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif;margin:.5rem 0}.overlay-book-info .rating{color:#f39c12}.overlay-book-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.overlay-swipe-button{align-items:center;border:none;border-radius:25px;cursor:pointer;display:flex;font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1rem;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.overlay-swipe-button.dislike{background-color:#e74c3c;color:#fff}.overlay-swipe-button.like{background-color:#2ecc71;color:#fff}.overlay-swipe-button:hover{box-shadow:0 2px 4px #0003;transform:scale(1.05)}.overlay-swipe-button:active{transform:scale(.95)}.overlay-book-description{border-top:1px solid #eee;margin-top:2rem;padding-top:1rem}.overlay-book-description h3{color:#6b705c;font-size:1.2rem;margin-bottom:1rem}.overlay-book-description h3,.overlay-book-description p{font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif}.overlay-book-description p{color:#666;font-size:.95rem;line-height:1.6;max-height:200px;overflow-y:auto;padding-right:1rem}.overlay-book-description p::-webkit-scrollbar{width:8px}.overlay-book-description p::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.overlay-book-description p::-webkit-scrollbar-thumb{background:#a5a58d;border-radius:4px}.overlay-book-description p::-webkit-scrollbar-thumb:hover{background:#b7b7a4}.error{background:#fff;border:2px solid #a5a58d;border-radius:20px;box-shadow:0 10px 20px #0000001a;margin:2rem auto;max-width:600px;padding:2rem;text-align:center}.error h2{color:#6b705c;font-size:2rem;margin-bottom:1.5rem}.error h2,.error p{font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif}.error p{color:#666;font-size:1.1rem;line-height:1.6;margin-bottom:2rem}.error-actions{align-items:center;display:flex;flex-direction:column;gap:1rem}.refresh-button{background:#a5a58d;border:none;border-radius:8px;box-shadow:0 2px 5px #0000001a;color:#fff;cursor:pointer;font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:.85rem;font-weight:600;max-width:250px;padding:.6rem 1.2rem;transition:all .3s ease;width:auto}.refresh-button:hover{background:#b7b7a4;box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}@media (max-width:768px){.error{margin:1rem;padding:1.5rem}.error h2{font-size:1.5rem;margin-bottom:1rem}.error p{font-size:1rem;margin-bottom:1.5rem}.refresh-button{font-size:.85rem}.recommendation-back-button,.refresh-button{border-radius:8px;display:block;margin-left:auto;margin-right:auto;max-width:250px;width:auto}.recommendation-back-button{font-size:.8rem}}
/*# sourceMappingURL=main.134858f7.css.map*/