:root{--max-width:1200px;--border-radius:10px;--font-mono:ui-monospace,Menlo,Monaco,"Cascadia Mono","Segoe UI Mono","Roboto Mono","Oxygen Mono","Ubuntu Monospace","Source Code Pro","Fira Mono","Droid Sans Mono","Courier New",monospace;--primary-color:#0070f3;--secondary-color:#f0f0f0;--text-color:#333;--text-light:#666;--border-color:#eaeaea}*{box-sizing:border-box;padding:0;margin:0}body,html{max-width:100vw;overflow-x:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}a{color:inherit;text-decoration:none}.container{max-width:var(--max-width);margin:0 auto;padding:2rem}.header{display:flex;flex-direction:column;align-items:center;margin-bottom:2rem}.title{font-size:2.5rem;margin-bottom:1rem;color:var(--text-color)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.card{border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1.5rem;transition:border-color .3s ease,transform .3s ease;display:flex;flex-direction:column}.card:hover{border-color:var(--primary-color);transform:translateY(-3px)}.imageContainer{margin-bottom:1rem;overflow:hidden;border-radius:5px}.card h3{margin:0 0 1rem;font-size:1.2rem}.card p{margin:0;font-size:.9rem;line-height:1.5;color:var(--text-light)}.pagination{display:flex;justify-content:center;margin-top:2rem;gap:.5rem}.paginationButton{padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:5px;background:white;cursor:pointer;transition:all .2s ease}.paginationButton:hover{background:var(--secondary-color)}.paginationButton.active{background:var(--primary-color);color:white;border-color:var(--primary-color)}.paginationButton:disabled{cursor:not-allowed;opacity:.5}.searchContainer{width:100%;margin-bottom:2rem}.searchInput{width:100%;padding:.8rem;border:1px solid var(--border-color);border-radius:5px;font-size:1rem}.searchInput:focus{outline:none;border-color:var(--primary-color)}.metaInfo{display:flex;font-size:.8rem;color:var(--text-light);margin:.5rem 0}.metaInfo span{margin-right:1rem}.summary{margin-top:1rem;font-style:italic}.noResults{padding:2rem}.footer,.noResults{text-align:center;color:var(--text-light)}.footer{margin-top:2rem;padding:1rem}.headerTop{display:flex;justify-content:space-between;align-items:center;width:100%}.mainNav{display:flex;gap:1.5rem;margin-top:.5rem}.navLink{color:var(--text-color);font-weight:500;position:relative}.navLink:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background-color:var(--primary-color);transition:width .3s ease}.navLink:hover:after{width:100%}.menuToggle{display:none;background:none;border:none;cursor:pointer;padding:.5rem;z-index:1001}.hamburger{display:block;position:relative}.hamburger,.hamburger:after,.hamburger:before{width:25px;height:3px;background-color:var(--text-color);transition:all .3s ease}.hamburger:after,.hamburger:before{content:"";position:absolute}.hamburger:before{top:-8px}.hamburger:after{top:8px}.hamburger.open{background-color:transparent}.hamburger.open:before{transform:rotate(45deg);top:0}.hamburger.open:after{transform:rotate(-45deg);top:0}.comparisonContainer{width:100%;margin-bottom:2rem}.pageHeader{text-align:center;margin-bottom:2rem}.pageHeader h1{font-size:2.5rem;margin-bottom:.5rem}.pageHeader p{color:var(--text-light);margin-bottom:1rem}.backLink{display:inline-block;color:var(--primary-color);margin-top:1rem;font-weight:500}.backLink:hover{text-decoration:underline}.comparisonContent{display:flex;min-height:600px;border-radius:var(--border-radius);overflow:hidden;box-shadow:0 4px 6px rgba(0,0,0,.1)}.comparisonSide{flex:1;position:relative;padding:1rem;background-color:rgba(0,0,0,.02)}.divider{width:2px;background-color:rgba(0,0,0,.1)}.sideHeader{text-align:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(0,0,0,.1)}.sideHeader h2{margin-bottom:.5rem}.count{font-size:.9rem;color:var(--text-light)}.bubbleContainer{position:relative;width:100%;height:500px}.bubble{position:absolute;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 5px rgba(0,0,0,.2);overflow:hidden}.bubble:hover{box-shadow:0 4px 8px rgba(0,0,0,.3)}.bubble img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.bubble:hover img{transform:scale(1.1)}.bubbleLink{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:50%;overflow:hidden;text-decoration:none}.bubbleNumber{font-size:1rem;text-shadow:0 1px 2px rgba(0,0,0,.3)}.bubbleTooltip{position:absolute;bottom:110%;left:50%;transform:translateX(-50%);background-color:white;padding:.75rem;border-radius:5px;box-shadow:0 2px 10px rgba(0,0,0,.2);width:max-content;max-width:250px;min-width:180px;z-index:100;color:var(--text-color);white-space:normal;word-break:break-word}.bubbleTooltip:after{content:"";position:absolute;top:100%;left:50%;margin-left:-8px;border:8px solid transparent;border-top-color:white}.tooltipTitle{font-weight:500;font-size:.9rem;margin-bottom:.25rem}.tooltipDate{font-size:.75rem;color:var(--text-light)}.maiden-bubble img{filter:sepia(.3) saturate(1.3)}.replacements-bubble img{filter:brightness(1.1) contrast(1.1)}.loadingContainer{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px}.spinner{border:4px solid rgba(0,0,0,.1);border-radius:50%;border-top:4px solid var(--primary-color);width:40px;height:40px;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.container{padding:1rem}.title{font-size:1.8rem;text-align:center}.menuToggle{display:block}.mainNav{position:fixed;top:0;left:0;right:0;background-color:white;flex-direction:column;gap:0;margin-top:0;padding:4rem 2rem 2rem;box-shadow:0 2px 10px rgba(0,0,0,.1);z-index:1000;transform:translateY(-100%);transition:transform .3s ease}.mainNav.open{transform:translateY(0)}.mainNav .navLink{padding:1rem 0;border-bottom:1px solid var(--border-color);font-size:1.1rem}.mainNav .navLink:last-child{border-bottom:none}.mainNav .navLink:after{display:none}.comparisonContent{flex-direction:column}.divider{width:100%;height:2px}.bubbleContainer{height:400px}}.bubble .hover-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background-color:rgba(0,0,0,.75);padding:8px;text-align:center;z-index:5;color:white;font-size:10px;font-weight:500;line-height:1.2;opacity:0;transition:opacity .3s ease;backdrop-filter:blur(2px)}.bubble:hover .hover-overlay{opacity:1}.bubble:hover img{filter:blur(1px)}