*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#000;color:#fff;overflow:hidden}.app-container{height:100vh;position:relative}.swiper-container{height:100vh}.slide{position:relative;background:#000}.video-player{width:100%;height:100%;object-fit:cover}.overlay-info{position:absolute;bottom:100px;left:20px;z-index:10;max-width:80%}.overlay-info h3{font-size:18px;margin-bottom:8px}.overlay-info p{font-size:14px;margin-bottom:4px}.author{opacity:.8;font-size:13px}.interaction-bar{position:absolute;right:20px;bottom:200px;display:flex;flex-direction:column;gap:20px;z-index:10}.interaction-bar button{background:#ffffff1a;border:none;font-size:24px;padding:10px;border-radius:50%;cursor:pointer;width:48px;height:48px;display:flex;align-items:center;justify-content:center}.interaction-bar button:hover{background:#fff3}.upload-btn{position:fixed;bottom:30px;left:50%;transform:translate(-50%);width:60px;height:60px;border-radius:50%;background:#ff0050;color:#fff;border:none;font-size:30px;cursor:pointer;z-index:9999;box-shadow:0 4px 12px #ff00504d}.upload-btn:hover{background:#ff1a5f;transform:translate(-50%) scale(1.1)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10000}.modal-content{background:#222;padding:30px;border-radius:10px;width:90%;max-width:500px}.modal-content h2{margin-bottom:20px}.modal-content input,.modal-content textarea{width:100%;padding:10px;margin:10px 0;background:#333;border:1px solid #444;color:#fff;border-radius:5px;font-family:inherit}.modal-content textarea{min-height:80px;resize:vertical}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.modal-actions button{padding:10px 20px;border:none;border-radius:5px;cursor:pointer;font-weight:500}.modal-actions button:first-child{background:#444;color:#fff}.modal-actions button:last-child{background:#ff0050;color:#fff}.modal-actions button:disabled{opacity:.5;cursor:not-allowed}.loading-spinner{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:50px;height:50px;border:3px solid #333;border-top:3px solid #fff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.interaction-bar button{transition:transform .2s ease,color .2s ease}.interaction-bar button:active{transform:scale(1.2)}.interaction-bar button:first-child{font-size:24px}.profile-btn-nav{position:fixed;top:20px;right:20px;width:50px;height:50px;border-radius:50%;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.2);color:#fff;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:100}.profile-btn-nav:hover{transform:scale(1.1);background:#fff3}.upload-btn{position:fixed;bottom:20px;right:20px;width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;font-size:30px;cursor:pointer;box-shadow:0 4px 15px #0000004d;transition:all .3s ease;z-index:100}.upload-btn:hover{transform:scale(1.1) rotate(90deg);box-shadow:0 6px 20px #0006}.overlay-info .author{color:#ddd;font-size:14px;margin-top:8px}.overlay-info .author:hover{color:#fff}.report-modal{max-width:400px;padding:20px}.report-modal h3{margin-bottom:20px;text-align:center}.report-reasons{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.report-reasons button{padding:12px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;cursor:pointer;transition:background .2s}.report-reasons button:hover{background:#fff3}@keyframes pulse{0%{background-color:#2a2a2a}50%{background-color:#3a3a3a}to{background-color:#2a2a2a}}.skeleton-bar,.skeleton-video-player,.skeleton-avatar,.skeleton-icon,.skeleton-thumbnail{animation:pulse 1.5s ease-in-out infinite;border-radius:4px}.video-feed-skeleton{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.skeleton-video-player{width:100%;height:100%;position:relative;display:flex;flex-direction:column;justify-content:flex-end}.skeleton-overlay{padding:1rem;z-index:1}.skeleton-bar.author{margin-top:8px}.skeleton-bar+.skeleton-bar{margin-top:8px}.skeleton-interaction-bar{position:absolute;right:10px;bottom:80px;display:flex;flex-direction:column;gap:20px}.skeleton-icon{width:40px;height:40px;border-radius:50%}.profile-skeleton{padding:1rem}.profile-skeleton-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.skeleton-avatar{width:80px;height:80px;border-radius:50%;flex-shrink:0}.profile-skeleton-stats{display:flex;justify-content:space-around;margin:1rem 0}.profile-skeleton-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:1rem}.skeleton-thumbnail{aspect-ratio:9 / 16;width:100%}.modal-content p{margin-bottom:15px;color:#ddd}.key-backup-nag{position:fixed;bottom:60px;left:50%;transform:translate(-50%);width:90%;max-width:500px;background-color:#2a2a2a;color:#fff;padding:12px 15px;border-radius:8px;display:flex;justify-content:space-between;align-items:center;z-index:1001;border:1px solid #444;box-shadow:0 4px 15px #00000080}.key-backup-nag p{margin:0;font-size:.9rem}.key-backup-nag-actions .backup-btn{background-color:#007bff}.key-backup-nag-actions .dismiss-btn{background:none;border:none;color:#aaa;font-size:.8rem;margin-left:10px}.author-line{display:flex;align-items:center;gap:12px;margin-top:8px}.author-actions{display:flex;align-items:center;gap:8px}.author-actions button{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:background-color .2s}.author-actions button:hover{background:#ffffff4d}.follow-btn.following{background-color:#f0f0f0;color:#111}.zap-btn{color:#f5b900}:root{--swiper-theme-color: #007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,#00000080,#0000)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color: #fff}.swiper-lazy-preloader-black{--swiper-preloader-color: #000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper:after{content:"";position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper:after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper:after{width:1px;height:var(--swiper-virtual-size)}.mute-btn{position:absolute;bottom:80px;right:15px;z-index:10;background:#0006;border:none;color:#fff;font-size:20px;border-radius:50%;width:40px;height:40px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s}@media (max-width: 480px){.mute-btn{bottom:100px}}.mute-btn:hover{background:#0009}.tiktok-profile-container{position:fixed;top:0;left:0;right:0;bottom:0;background:#000;z-index:1000;overflow-y:auto;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.tiktok-profile-header{display:flex;align-items:center;justify-content:space-between;padding:16px;position:sticky;top:0;background:#000;z-index:10;border-bottom:1px solid rgba(255,255,255,.1)}.back-button,.more-button{background:none;border:none;padding:8px;cursor:pointer;display:flex;align-items:center;justify-content:center}.header-username{color:#fff;font-size:16px;font-weight:600;flex:1;text-align:center}.tiktok-profile-info{padding:20px 16px}.profile-avatar-section{display:flex;justify-content:center;margin-bottom:16px}.profile-avatar{width:96px;height:96px;border-radius:50%;object-fit:cover;background:#333}.avatar-edit-container{position:relative}.avatar-url-input{position:absolute;bottom:-30px;left:50%;transform:translate(-50%);width:200px;background:#ffffff1a;border:1px solid #333;color:#fff;padding:6px 10px;border-radius:4px;font-size:12px}.profile-display-name{color:#fff;font-size:18px;font-weight:600;text-align:center;margin:8px 0 4px}.profile-username{color:#8a8a8a;font-size:14px;text-align:center;margin:0 0 16px}.profile-stats{display:flex;justify-content:center;gap:32px;margin:20px 0}.stat-item{display:flex;flex-direction:column;align-items:center}.stat-number{color:#fff;font-size:18px;font-weight:700;line-height:1}.stat-label{color:#8a8a8a;font-size:13px;margin-top:4px}.profile-actions{margin:20px 0}.edit-profile-button{width:100%;padding:10px;background:transparent;border:1px solid #333;color:#fff;font-size:15px;font-weight:600;border-radius:4px;cursor:pointer;transition:background .2s}.edit-profile-button:hover{background:#ffffff0d}.follow-actions{display:flex;gap:8px}.follow-button{flex:1;padding:10px;background:#fe2c55;border:none;color:#fff;font-size:16px;font-weight:600;border-radius:4px;cursor:pointer;transition:background .2s}.follow-button.following{background:transparent;border:1px solid #333}.message-button{width:44px;height:44px;background:transparent;border:1px solid #333;color:#fff;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center}.edit-actions{display:flex;gap:8px}.cancel-button,.save-button{flex:1;padding:10px;border-radius:4px;font-size:15px;font-weight:600;cursor:pointer;border:none;transition:opacity .2s}.cancel-button{background:transparent;border:1px solid #333;color:#fff}.save-button{background:#fe2c55;color:#fff}.save-button:disabled{opacity:.5;cursor:not-allowed}.profile-bio{color:#fff;font-size:14px;text-align:center;margin:16px 0 0;line-height:1.4}.edit-form{margin:16px 0}.edit-name,.edit-bio{width:100%;background:#ffffff1a;border:1px solid #333;color:#fff;padding:10px;border-radius:4px;margin-bottom:8px;font-size:14px}.edit-name{text-align:center;font-weight:600}.edit-bio{resize:none;min-height:60px;line-height:1.4}.profile-tabs{display:flex;border-top:1px solid rgba(255,255,255,.1);position:sticky;top:65px;background:#000;z-index:9}.tab-button{flex:1;padding:16px;background:transparent;border:none;color:#8a8a8a;cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative;transition:color .2s}.tab-button.active{color:#fff}.tab-button.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:#fff}.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;padding:2px;min-height:400px}.video-thumbnail{aspect-ratio:9/16;background:#161616;position:relative;cursor:pointer;overflow:hidden}.thumbnail-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(45deg,#1a1a1a 25%,#222,#1a1a1a 75%);background-size:400% 400%;animation:shimmer 2s infinite}@keyframes shimmer{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.video-stats{position:absolute;bottom:4px;left:4px;display:flex;align-items:center;gap:4px;color:#fff;font-size:12px;font-weight:600;text-shadow:0 1px 3px rgba(0,0,0,.8)}.empty-state{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#8a8a8a;text-align:center}.empty-state p{margin-top:16px;font-size:14px}.tiktok-profile-loading{height:100vh;display:flex;align-items:center;justify-content:center}.loading-spinner{width:32px;height:32px;border:3px solid rgba(255,255,255,.1);border-radius:50%;border-top-color:#fe2c55;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 600px){.tiktok-profile-container{-webkit-overflow-scrolling:touch}}.video-thumbnail-img{width:100%;height:100%;object-fit:cover;position:absolute;top:0;left:0;background-color:#222}.zap-button{background-color:#f7931a;color:#fff;border:none;padding:0 16px;height:36px;border-radius:4px;margin-left:8px;font-weight:700;cursor:pointer;transition:background-color .2s}.zap-button:hover{background-color:#e08417}
