.app-container{width:100%;height:100%;overflow:hidden}.app-container,.emoji-content{display:flex;flex-direction:column}.emoji-content{flex-grow:1}.search-container{position:relative;margin-bottom:1rem}.search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#6b7280}.search-input{padding-left:2.5rem;width:100%;height:40px;border-radius:.375rem;transition:all .2s}.categories-container{display:flex;flex-wrap:nowrap;overflow-x:auto;padding-bottom:.5rem;margin-bottom:1rem;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:thin}.category-tab{scroll-snap-align:start;white-space:nowrap;padding:.5rem 1rem;margin-right:.5rem;border-radius:9999px;font-size:.875rem;cursor:pointer;transition:all .2s;flex-shrink:0}.emoji-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:.75rem;padding:.5rem 0}.emoji-item{display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1/1;border-radius:.375rem;cursor:pointer;transition:transform .2s,background-color .2s;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative}.emoji-item:hover{transform:scale(1.1)}.emoji-item:active{transform:scale(.95)}.emoji-display{font-size:1.75rem;line-height:1}.emoji-name{font-size:.6rem;margin-top:.25rem;text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.copy-tooltip{position:absolute;top:-2rem;left:50%;transform:translateX(-50%);background-color:rgba(0,0,0,.7);color:white;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;opacity:0;transition:opacity .2s;pointer-events:none;white-space:nowrap}.emoji-item.copied .copy-tooltip{opacity:1}.copy-notification{position:fixed;bottom:20px;right:20px;padding:10px 20px;background-color:rgba(0,0,0,.7);color:#fff;border-radius:4px;z-index:1000;animation:fade-in-out 2s ease-in-out}@keyframes fade-in-out{0%{opacity:0}20%{opacity:1}80%{opacity:1}to{opacity:0}}.emoji-detail{position:fixed;bottom:0;left:0;right:0;background-color:white;border-top-left-radius:1rem;border-top-right-radius:1rem;box-shadow:0 -4px 6px -1px rgba(0,0,0,.1);padding:1.5rem;transform:translateY(100%);transition:transform .3s;z-index:50}.emoji-detail.open{transform:translateY(0)}.emoji-detail-content{display:flex;flex-direction:column;align-items:center}.emoji-detail-display{font-size:4rem;margin-bottom:1rem}.emoji-detail-name{font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.emoji-detail-info{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;width:100%;margin-top:1rem}.emoji-detail-info-item{display:flex;flex-direction:column}.emoji-detail-info-label{font-size:.75rem;color:#6b7280;margin-bottom:.25rem}.emoji-detail-info-value{font-size:.875rem;font-family:monospace}.categories-container::-webkit-scrollbar,.emoji-content::-webkit-scrollbar{width:6px;height:6px}.categories-container::-webkit-scrollbar-thumb,.emoji-content::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.categories-container::-webkit-scrollbar-thumb:hover,.emoji-content::-webkit-scrollbar-thumb:hover{background:#a8a8a8}[data-theme=dark] .categories-container::-webkit-scrollbar-thumb,[data-theme=dark] .emoji-content::-webkit-scrollbar-thumb{background:#4a4a4a}[data-theme=dark] .categories-container::-webkit-scrollbar-thumb:hover,[data-theme=dark] .emoji-content::-webkit-scrollbar-thumb:hover{background:#5a5a5a}.loading-container{display:flex;justify-content:center;align-items:center;min-height:200px}.loading-spinner{border-radius:50%;border:3px solid rgba(0,0,0,.1);border-top-color:#3498db;width:24px;height:24px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}