:root{--bg-dark: #0f1115;--bg-panel: #1b1e24;--bg-float: rgba(27, 30, 36, .85);--text-main: #f0f2f5;--text-muted: #8b929c;--brand: #ff2a5f;--brand-hover: #ff4d79;--success: #00d287;--radius-lg: 16px;--radius-sm: 8px;--header-height: 64px;--gap: 8px;--shadow: 0 4px 20px rgba(0, 0, 0, .5);--transition: transform .2s cubic-bezier(.25, .8, .25, 1), opacity .2s cubic-bezier(.25, .8, .25, 1), background-color .2s ease, border-color .2s ease, box-shadow .2s ease}body{margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif;background-color:var(--bg-dark);color:var(--text-main);-webkit-font-smoothing:antialiased;overflow-y:scroll}#authScreen{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-dark);display:flex;align-items:center;justify-content:center;z-index:99999}.auth-box{background:var(--bg-panel);padding:40px;border-radius:var(--radius-lg);box-shadow:var(--shadow);width:100%;max-width:320px;text-align:center}.auth-box h2{margin:0 0 8px;font-size:24px}.auth-box p{color:var(--text-muted);font-size:14px;margin-bottom:24px}.auth-input{width:calc(100% - 24px);padding:12px;border:2px solid transparent;border-radius:var(--radius-sm);background:#ffffff0d;color:#fff;font-size:16px;margin-bottom:16px;outline:none;transition:border-color .2s}.source-selector{display:flex;background:#0000004d;padding:4px;border-radius:var(--radius-sm);margin-bottom:20px}.source-radio{flex:1;cursor:pointer}.source-radio input{display:none}.radio-btn{display:block;padding:8px 12px;text-align:center;border-radius:4px;color:var(--text-muted);font-size:14px;font-weight:600;transition:all .2s}.source-radio input:checked+.radio-btn{background:var(--brand);color:#fff;box-shadow:0 2px 8px #ff2a5f4d}.auth-input:focus{border-color:var(--brand);box-shadow:0 0 0 2px #ff2a5f4d}.auth-btn{width:100%;padding:12px;border:none;border-radius:var(--radius-sm);background:var(--brand);color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:background .2s}.auth-btn:hover{background:var(--brand-hover)}.auth-btn:focus-visible,.btn-icon:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.auth-error{color:var(--brand);font-size:12px;margin-top:12px;display:none}.app-header{position:fixed;top:0;left:0;right:0;background:#0f1115b3;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);min-height:var(--header-height);padding:12px 24px;display:flex;flex-direction:column;gap:8px;z-index:1000;border-bottom:1px solid rgba(255,255,255,.05);transition:transform .3s ease}.app-header.hidden{transform:translateY(-100%)}.header-row-1{display:flex;align-items:center;gap:16px;width:100%}.header-icon-row{display:none}.brand-title{font-weight:800;font-size:20px;margin:0;color:var(--brand);cursor:pointer;letter-spacing:.5px;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:8px}.btn-icon{background:transparent;border:none;color:var(--text-main);height:40px;width:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:20px;transition:var(--transition)}.btn-icon:hover{background:#ffffff1a}.search-wrapper{flex:1;display:flex;align-items:center;background:#ffffff14;border-radius:20px;padding:0 16px;height:42px}.search-wrapper input{flex:1;background:transparent;border:none;color:#fff;font-size:15px;padding:8px;outline:none}.search-wrapper input:focus{box-shadow:0 0 0 2px #ff2a5f4d;border-radius:20px}.search-wrapper input::placeholder{color:var(--text-muted)}.header-source-switch{display:flex;align-items:center;margin:0 4px}.source-dropdown{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ffffff14;color:var(--text-main);border:1px solid rgba(255,255,255,.1);padding:6px 32px 6px 16px;border-radius:20px;font-size:14px;font-weight:600;cursor:pointer;outline:none;transition:all .2s;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%238b929c%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E);background-repeat:no-repeat;background-position:right 12px top 50%;background-size:10px auto}.source-dropdown:hover,.source-dropdown:focus{background-color:#ffffff26;border-color:#ffffff4d}.source-dropdown option{background:var(--bg-panel);color:var(--text-main)}.autocomplete-results{position:absolute;top:calc(100% + 8px);left:0;width:100%;background:var(--bg-panel);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);box-shadow:0 10px 30px #00000080;max-height:300px;overflow-y:auto;z-index:2000;display:none;flex-direction:column}.search-wrapper{position:relative}.autocomplete-item{padding:10px 16px;color:var(--text-main);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:background .2s}.autocomplete-item:hover,.autocomplete-item.active{background:#ffffff14}.autocomplete-item .tag-name{font-weight:500}.autocomplete-item .tag-type{font-size:11px;color:var(--text-muted);background:#0000004d;padding:2px 6px;border-radius:4px}.tags-list{display:flex;gap:8px;flex-wrap:wrap}.tag-chip{background:var(--brand);color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;display:flex;align-items:center;gap:6px;box-shadow:0 2px 8px #ff2a5f4d}.tag-chip button{background:none;border:none;color:#fff;cursor:pointer;padding:0;font-size:14px;opacity:.8}.tag-chip button:hover{opacity:1}.header-filters{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.filter-group{display:flex;align-items:center;gap:8px;background:#ffffff0d;padding:6px 12px;border-radius:var(--radius-sm);font-size:13px;font-weight:500}.filter-group input[type=number]{width:60px;background:#0000004d;border:1px solid rgba(255,255,255,.1);color:#fff;padding:4px 8px;border-radius:4px;outline:none}.filter-group input[type=number]:focus{border-color:var(--brand)}.col-count-btns{display:flex;gap:4px}.col-btn{background:#ffffff12;border:1px solid rgba(255,255,255,.1);color:var(--text-muted);width:26px;height:26px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.col-btn:hover{background:#ffffff26;color:var(--text-main)}.col-btn.active{background:var(--brand);border-color:var(--brand);color:#fff}.custom-checkbox{display:flex;align-items:center;gap:6px;cursor:pointer;-webkit-user-select:none;user-select:none}.custom-checkbox input{display:none}.custom-checkbox .checkmark{width:16px;height:16px;background:#0000004d;border:1px solid rgba(255,255,255,.2);border-radius:4px;display:flex;align-items:center;justify-content:center}.custom-checkbox input:checked+.checkmark{background:var(--brand);border-color:var(--brand)}.custom-checkbox input:checked+.checkmark:after{content:"✓";color:#fff;font-size:12px;font-weight:700}.custom-select{background:#0000004d;border:1px solid rgba(255,255,255,.1);color:#fff;padding:4px 8px;border-radius:4px;outline:none;font-size:13px}.custom-select option{background:var(--bg-panel);color:#fff}.r34-best-filters{display:flex;align-items:center;gap:8px;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.grid-slider-group{display:flex;align-items:center;gap:8px}.grid-slider-group input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100px;background:transparent}.grid-slider-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:14px;width:14px;border-radius:50%;background:var(--brand);cursor:pointer;margin-top:-5px}.grid-slider-group input[type=range]::-webkit-slider-runnable-track{width:100%;height:4px;cursor:pointer;background:#fff3;border-radius:2px}.main-content{padding:calc(var(--header-height) + 60px) 24px 48px}.masonry-grid{display:flex;flex-direction:column;width:100%}.masonry-page-chunk{display:flex;flex-direction:row;gap:4px;width:100%;margin-bottom:4px}.webtoon-shelf{display:grid!important;grid-template-columns:repeat(var(--col-count, 4),1fr);gap:8px;margin-bottom:8px}.webtoon-shelf .masonry-item{aspect-ratio:2 / 3!important;min-height:unset!important;max-height:unset!important;width:100%!important}@media(max-width:768px){.webtoon-shelf{grid-template-columns:repeat(2,1fr)!important}}.masonry-column{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.masonry-item{break-inside:avoid;position:relative;background:var(--bg-panel);border-radius:2px;overflow:hidden;cursor:pointer;transform:translateZ(0);will-change:transform;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s,opacity .5s ease;background:linear-gradient(-45deg,#1e1e1e,#2a2a2a,#1e1e1e,#121212);background-size:400% 400%;animation:skeletonWait 3s ease infinite;content-visibility:auto;contain-intrinsic-size:auto 300px;contain:layout style paint;backface-visibility:hidden}.masonry-item:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid rgba(255,255,255,.05);border-radius:inherit;pointer-events:none;z-index:10}@keyframes skeletonWait{0%{background-position:200% 0}to{background-position:-200% 0}}.masonry-item{opacity:0;transform:translateY(20px) scale(.98);transition:transform .5s cubic-bezier(.16,1,.3,1),opacity .5s ease,box-shadow .3s ease;background:linear-gradient(90deg,#1b1e24 25%,#252932,#1b1e24 75%);background-size:200% 100%;animation:skeletonWait 2s infinite linear}.masonry-item.no-anim{opacity:1!important;transform:none!important;transition:none!important;animation:none!important}.masonry-item.no-anim img,.masonry-item.no-anim .lazy-media{opacity:1!important;transition:none!important}.masonry-item.animate-in{opacity:1;transform:translateY(0) scale(1);animation:none!important;background:#111}.masonry-item:hover{transform:scale(1.02);box-shadow:0 8px 28px #00000080;z-index:2;position:relative}.masonry-item img,.masonry-item video{width:100%;height:100%;display:block;object-fit:cover;background:transparent;max-width:100%;opacity:0;transition:opacity .4s ease-in-out;image-rendering:high-quality;transform:translateZ(0)}.masonry-item img.loaded,.masonry-item video.loaded{opacity:1}.masonry-item img.loaded~*,.masonry-item video.loaded~*{animation:fadeScaleIn .3s ease forwards}@keyframes fadeScaleIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hover-video-preview{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:5;border-radius:12px;background:#000}.item-overlay{position:absolute;bottom:0;left:0;right:0;padding:24px 8px 8px;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.5) 40%,transparent 100%);color:#fff;opacity:1;transition:opacity .3s ease,padding .3s ease;display:flex;justify-content:space-between;align-items:flex-end;z-index:10;pointer-events:none}.item-info{display:flex;flex-direction:column;gap:2px;max-width:80%}.item-user{font-size:13px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-tags-preview{font-size:11px;color:#fff9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-like-btn{color:#ffffffe6;transition:transform .2s}.item-like-btn:hover{transform:scale(1.2);color:var(--brand)}.item-like-btn svg{width:18px;height:18px}.masonry-item:hover .item-overlay{opacity:1}.item-creator{display:none}.item-creator svg{width:14px;height:14px;fill:currentColor}.item-stats{display:none}.item-badges{position:absolute;top:8px;right:8px;display:flex;gap:4px;z-index:5}.item-type{background:#00000080;padding:3px 6px;border-radius:4px;font-size:10px;font-weight:700;text-transform:uppercase;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;border:1px solid rgba(255,255,255,.1)}.item-badge-webtoon{background:#ff9800;color:#000;padding:3px 6px;border-radius:4px;font-size:10px;font-weight:800;text-transform:uppercase;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.2)}.item-deleted-banner{position:absolute;top:12px;left:12px;background:#ff2a5f;color:#fff;padding:6px 12px;border-radius:6px;font-size:13px;font-weight:800;z-index:10;box-shadow:0 4px 12px #ff2a5f80;pointer-events:none;letter-spacing:1px}.loader-container{display:flex;justify-content:center;padding:32px 0}.spinner{width:32px;height:32px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;color:var(--text-muted);padding:64px 24px;font-size:18px}body.scroller-mode{overflow:hidden;padding:0}body.scroller-mode .main-content{padding:0;height:100vh}.lightbox-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;flex-direction:column;overflow-y:auto}.lightbox-modal.active{display:flex}.lightbox-content-wrapper{position:relative;max-width:90vw;max-height:80vh;display:flex;align-items:center;justify-content:center}.lightbox-content{max-width:100%;max-height:80vh;border-radius:var(--radius-sm);box-shadow:0 10px 40px #00000080;object-fit:contain;background:#000;transition:max-height .3s ease,max-width .3s ease;cursor:zoom-in}.lightbox-modal.zoomed{justify-content:flex-start;padding-top:40px;padding-bottom:40px}.lightbox-content-wrapper.zoomed{max-width:100vw;max-height:none;width:100%;padding:0;margin:0;display:block}.lightbox-content.zoomed{max-height:none!important;max-width:100%!important;width:auto!important;height:auto!important;object-fit:contain;cursor:zoom-out;border-radius:0;margin:0 auto;display:block;image-rendering:high-quality}.lightbox-close{position:fixed;top:20px;right:30px;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.1);color:#fff;width:50px;height:50px;border-radius:50%;font-size:32px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:100000;box-shadow:0 4px 12px #0000004d}.lightbox-close:hover{opacity:1;color:var(--brand)}.lightbox-controls{margin-top:24px;display:flex;gap:16px;align-items:center}.lightbox-btn{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);padding:8px 16px;border-radius:20px;font-weight:500;cursor:pointer;transition:var(--transition);text-decoration:none;font-size:14px;display:flex;align-items:center;gap:8px}.lightbox-btn:hover{background:#fff3;border-color:#ffffff4d}.lightbox-btn.brand{background:var(--brand);border-color:var(--brand)}.lightbox-btn.brand:hover{background:var(--brand-hover);border-color:var(--brand-hover)}@media(min-width:769px)and (max-width:1100px){.masonry-grid{columns:2!important}.grid-cols-group{display:none!important}.main-content{padding:calc(var(--header-height) + 70px) 16px 32px}}@media(max-width:768px){.app-header{padding:8px 10px;gap:6px}.header-row-1{gap:8px;flex-wrap:nowrap}.header-row-1 .btn-icon{display:none}.header-icon-row{display:flex;align-items:center;gap:6px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px}.header-icon-row::-webkit-scrollbar{display:none}.header-icon-row .btn-icon{flex-shrink:0;width:36px;height:36px;background:#ffffff12;border-radius:10px}.brand-title{font-size:13px;white-space:nowrap;flex-shrink:0}.search-wrapper{padding:0 10px;height:34px;flex:1 1 auto;min-width:0}.search-wrapper input{font-size:13px}.source-dropdown,.header-source-switch select{font-size:12px;padding:4px 6px;flex-shrink:0}.header-filters{gap:6px;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;padding-bottom:2px}.header-filters::-webkit-scrollbar{display:none}.filter-group{padding:4px 8px;font-size:11px;flex-shrink:0;white-space:nowrap}.filter-group input[type=number]{width:38px;font-size:11px}.custom-select{font-size:11px;flex-shrink:0}.tags-list{flex-shrink:0;flex-wrap:nowrap}.main-content{padding:140px 8px 24px}.masonry-grid{display:flex;flex-direction:column;gap:12px;width:100%;padding:0}.masonry-column{width:100%;display:flex;flex-direction:column;gap:12px}.grid-cols-group{display:none!important}.masonry-item{margin-bottom:10px;border-radius:12px}}
