@charset "UTF-8";@import"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css";.toast-container[data-v-dddf43ef]{position:fixed;top:80px;left:50%;transform:translate(-50%);z-index:10000;min-width:300px;max-width:500px;padding:16px 24px;border-radius:12px;box-shadow:0 4px 20px #00000080;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media (max-width: 768px){.toast-container[data-v-dddf43ef]{min-width:280px;max-width:calc(100vw - 40px);top:70px}}.toast-content[data-v-dddf43ef]{display:flex;align-items:center;gap:12px}.toast-icon[data-v-dddf43ef]{font-size:24px;flex-shrink:0}.toast-message[data-v-dddf43ef]{flex:1;font-size:15px;line-height:1.5;padding-right:8px}.toast-close[data-v-dddf43ef]{flex-shrink:0;background:none;border:none;color:inherit;cursor:pointer;padding:4px;font-size:18px;opacity:.7;transition:opacity .2s ease;display:flex;align-items:center;justify-content:center}.toast-close[data-v-dddf43ef]:hover{opacity:1}.toast-close[data-v-dddf43ef]:active{transform:scale(.95)}.toast-success[data-v-dddf43ef]{background:linear-gradient(135deg,#00ff0026,#00c80026);border:1px solid rgba(0,255,0,.3);color:#0f0}.toast-success .toast-icon[data-v-dddf43ef]{color:#0f0}.toast-error[data-v-dddf43ef]{background:linear-gradient(135deg,#ff000026,#c8000026);border:1px solid rgba(255,0,0,.3);color:red}.toast-error .toast-icon[data-v-dddf43ef]{color:red}.toast-warning[data-v-dddf43ef]{background:linear-gradient(135deg,#ffa50026,#ff8c0026);border:1px solid rgba(255,165,0,.3);color:#ff6b00}.toast-warning .toast-icon[data-v-dddf43ef]{color:#ff6b00}.toast-info[data-v-dddf43ef]{background:linear-gradient(135deg,#0096ff26,#0078ff26);border:1px solid rgba(0,150,255,.3);color:#0096ff}.toast-info .toast-icon[data-v-dddf43ef]{color:#0096ff}.toast-fade-enter-active[data-v-dddf43ef],.toast-fade-leave-active[data-v-dddf43ef]{transition:all .3s ease}.toast-fade-enter-from[data-v-dddf43ef],.toast-fade-leave-to[data-v-dddf43ef]{opacity:0;transform:translate(-50%) translateY(-20px)}.auth-modal-overlay[data-v-27938261]{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:flex-end;justify-content:center;z-index:9999;padding:0}@media (min-width: 1024px){.auth-modal-overlay[data-v-27938261]{align-items:center;padding:24px}}.auth-modal-container[data-v-27938261]{background:linear-gradient(135deg,#1a1a1a,#0d0d0d);border-radius:16px 16px 0 0;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;padding:clamp(32px,6vw,48px) clamp(20px,4vw,32px) clamp(24px,5vw,40px);position:relative;box-shadow:0 -4px 32px #0f03;border-top:2px solid rgba(0,255,0,.3);transition:transform .3s cubic-bezier(.34,1.56,.64,1)}@media (min-width: 1024px){.auth-modal-container[data-v-27938261]{border-radius:16px;max-height:85vh}}.drag-handle-bar[data-v-27938261]{position:absolute;top:0;left:0;right:0;height:32px;display:flex;align-items:center;justify-content:center;cursor:grab;z-index:10;-webkit-tap-highlight-color:transparent}.drag-handle-bar[data-v-27938261]:active{cursor:grabbing}@media (min-width: 1024px){.drag-handle-bar[data-v-27938261]{display:none}}.drag-indicator[data-v-27938261]{width:40px;height:4px;background:#ffffff4d;border-radius:2px;transition:all .3s ease}.drag-handle-bar:active .drag-indicator[data-v-27938261]{width:50px;background:#00ff0080}.language-selector[data-v-27938261]{position:absolute;top:16px;left:16px;z-index:11}.language-btn[data-v-27938261]{width:36px;height:36px;border-radius:50%;background:#00ff001a;border:1px solid rgba(0,255,0,.3);color:#0f0;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease}.language-btn i[data-v-27938261]{font-size:18px}.language-btn[data-v-27938261]:hover{background:#0f03;border-color:#0f0;transform:scale(1.1);box-shadow:0 0 12px #00ff004d}.language-btn[data-v-27938261]:active{transform:scale(.95)}.language-menu[data-v-27938261]{position:absolute;top:calc(100% + 8px);left:0;min-width:200px;background:linear-gradient(135deg,#1a1a1a,#0d0d0d);border:1px solid rgba(0,255,0,.3);border-radius:12px;box-shadow:0 4px 20px #00000080,0 0 20px #0f03;overflow:hidden;z-index:20}.language-item[data-v-27938261]{display:flex;align-items:center;gap:8px;padding:clamp(10px,2vw,12px) clamp(14px,3vw,16px);cursor:pointer;transition:all .3s ease;border-bottom:1px solid rgba(255,255,255,.05)}.language-item[data-v-27938261]:last-child{border-bottom:none}.language-item .language-flag[data-v-27938261]{font-size:20px;line-height:1}.language-item .language-name[data-v-27938261]{flex:1;font-size:clamp(13px,2.5vw,14px);color:#999}.language-item i[data-v-27938261]{font-size:14px;color:#0f0}.language-item[data-v-27938261]:hover{background:#00ff000d}.language-item:hover .language-name[data-v-27938261]{color:#fff}.language-item.active[data-v-27938261]{background:#00ff001a}.language-item.active .language-name[data-v-27938261]{color:#0f0;font-weight:600}.language-menu-enter-active[data-v-27938261],.language-menu-leave-active[data-v-27938261]{transition:all .2s ease}.language-menu-enter-from[data-v-27938261],.language-menu-leave-to[data-v-27938261]{opacity:0;transform:translateY(-10px)}.close-btn[data-v-27938261]{position:absolute;top:16px;right:16px;width:36px;height:36px;border-radius:50%;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#999;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;z-index:10}.close-btn i[data-v-27938261]{font-size:18px}.close-btn[data-v-27938261]:hover{background:#ffffff1a;color:#fff;transform:rotate(90deg)}.modal-title[data-v-27938261]{font-size:clamp(22px,4.5vw,28px);font-weight:700;color:#fff;text-align:center;margin:0 0 clamp(24px,5vw,32px) 0;padding-top:4px;background:linear-gradient(135deg,#0f0,#3f3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.form-section[data-v-27938261]{animation:fadeIn-27938261 .3s ease-in-out}@keyframes fadeIn-27938261{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.form-group[data-v-27938261]{margin-bottom:clamp(14px,3vw,18px)}.form-group label[data-v-27938261]{display:flex;align-items:center;gap:4px;color:#999;font-size:clamp(12px,2.5vw,14px);margin-bottom:4px;font-weight:500}.form-group label i[data-v-27938261]{color:#0f0}.input-field[data-v-27938261]{width:100%;padding:clamp(10px,2vw,12px) clamp(14px,3vw,16px);background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:clamp(13px,2.5vw,15px);transition:all .3s ease}.input-field[data-v-27938261]:focus{outline:none;border-color:#0f0;background:#ffffff0d;box-shadow:0 0 0 3px #00ff001a}.input-field[data-v-27938261]::placeholder{color:#666}.password-input-wrapper[data-v-27938261]{position:relative}.password-input-wrapper .toggle-password[data-v-27938261]{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:#999;cursor:pointer;padding:4px;transition:color .3s ease}.password-input-wrapper .toggle-password[data-v-27938261]:hover{color:#0f0}.form-options[data-v-27938261]{display:flex;justify-content:flex-end;align-items:center;margin-bottom:clamp(16px,3vw,20px);font-size:clamp(12px,2.5vw,13px)}.link[data-v-27938261]{color:#0f0;text-decoration:none;transition:all .3s ease}.link[data-v-27938261]:hover{color:#3f3;text-decoration:underline}.link-btn[data-v-27938261]{background:none;border:none;color:#0f0;text-decoration:none;transition:all .3s ease;cursor:pointer;padding:0;font-size:inherit}.link-btn[data-v-27938261]:hover{color:#3f3;text-decoration:underline}.btn-primary[data-v-27938261]{width:100%;padding:clamp(12px,2.5vw,14px);background:linear-gradient(135deg,#0f0,#0c0);border:none;border-radius:8px;color:#0a0a0a;font-size:clamp(14px,2.8vw,16px);font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:4px}.btn-primary[data-v-27938261]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #0f06}.btn-primary[data-v-27938261]:disabled{opacity:.6;cursor:not-allowed}.btn-primary i[data-v-27938261]{font-size:clamp(14px,2.8vw,16px)}.form-tip[data-v-27938261]{text-align:center;margin-top:clamp(16px,3vw,20px);font-size:clamp(12px,2.5vw,14px);color:#999}.form-tip span[data-v-27938261]{margin-right:4px}.auth-modal-enter-active[data-v-27938261],.auth-modal-leave-active[data-v-27938261]{transition:all .45s ease}.auth-modal-enter-active .auth-modal-container[data-v-27938261],.auth-modal-leave-active .auth-modal-container[data-v-27938261]{transition:transform .45s cubic-bezier(.34,1.56,.64,1)}.auth-modal-enter-from[data-v-27938261],.auth-modal-leave-to[data-v-27938261]{opacity:0}.auth-modal-enter-from .auth-modal-container[data-v-27938261],.auth-modal-leave-to .auth-modal-container[data-v-27938261]{transform:translateY(100%)}@media (min-width: 1024px){.auth-modal-enter-from .auth-modal-container[data-v-27938261],.auth-modal-leave-to .auth-modal-container[data-v-27938261]{transform:translateY(50px) scale(.9)}}.auth-modal-enter-to[data-v-27938261],.auth-modal-leave-from[data-v-27938261]{opacity:1}.auth-modal-enter-to .auth-modal-container[data-v-27938261],.auth-modal-leave-from .auth-modal-container[data-v-27938261]{transform:translateY(0) scale(1)}.auth-modal-container[data-v-27938261]{scrollbar-width:thin;scrollbar-color:rgba(0,255,0,.3) transparent}.auth-modal-container[data-v-27938261]::-webkit-scrollbar{width:6px}.auth-modal-container[data-v-27938261]::-webkit-scrollbar-track{background:transparent}.auth-modal-container[data-v-27938261]::-webkit-scrollbar-thumb{background:#00ff004d;border-radius:3px}.auth-modal-container[data-v-27938261]::-webkit-scrollbar-thumb:hover{background:#00ff0080}.select-field{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2300ff00' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}.btn-primary{background:#0f0;color:#000;border:none;padding:10px 20px;border-radius:8px;font-weight:700;cursor:pointer;transition:all .2s ease;font-size:15px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-primary:hover{background:#0d0;transform:translateY(-2px);box-shadow:0 4px 15px #00ff004d}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-outline{background:transparent;color:#0f0;border:2px solid #00FF00;padding:8px 18px;border-radius:8px;font-weight:700;cursor:pointer;transition:all .2s ease;font-size:15px}.btn-outline:hover{background:#0f0;color:#000}.btn-outline:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:#2a2a2a;color:#fff;border:none;padding:10px 20px;border-radius:8px;font-weight:700;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background:#3a3a3a}.card-base,.product-card{background:#1a1a1a;border-radius:12px;padding:24px;box-shadow:0 2px 4px #0000004d;transition:all .2s ease}.card-base:hover,.product-card:hover{box-shadow:0 4px 8px #0006;transform:translateY(-2px)}.product-card{cursor:pointer;overflow:hidden;padding:0}.product-card .product-image{width:100%;aspect-ratio:1;border-radius:8px;overflow:hidden;margin-bottom:8px;position:relative;background:#0a0a0a}.product-card .product-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.product-card .product-image:hover img{transform:scale(1.05)}.product-card .product-info{display:flex;flex-direction:column}.product-card .product-name{font-weight:700;font-size:15px;margin-bottom:4px;color:#fff;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;line-height:1.4;min-height:2.8em}.product-card .product-price{font-size:18px;color:#0f0;font-weight:700;margin-bottom:4px}.product-card .product-brand{font-size:12px;color:#999;margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-card .product-progress{margin-top:8px}.product-card .product-progress .progress-bar-bg{height:5px;background:#2a2a2a;border-radius:10px;overflow:hidden;position:relative}.product-card .product-progress .progress-bar-bg .progress-bar-fill{height:100%;background:linear-gradient(90deg,#0f0,#0a0);border-radius:10px;transition:width .3s ease;position:relative}.product-card .product-progress .progress-bar-bg .progress-bar-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}.product-card .product-progress .progress-text{display:flex;justify-content:space-between;margin-top:6px;font-size:11px;color:#999}.form-group{margin-bottom:24px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#fff;font-size:14px}.form-group .required{color:red;margin-left:4px}.input-field,.select-field{width:100%;padding:12px 16px;background:#2a2a2a;border:2px solid transparent;border-radius:8px;color:#fff;font-size:15px;transition:all .2s ease}.input-field:focus,.select-field:focus{outline:none;border-color:#0f0;background:#1a1a1a}.input-field::placeholder,.select-field::placeholder{color:#666}.input-field:disabled,.select-field:disabled{opacity:.5;cursor:not-allowed}.input-field.error,.error.select-field{border-color:red}textarea.input-field,textarea.select-field{resize:vertical;min-height:100px;font-family:inherit}.select-field{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2300ff00' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}.error-message{color:red;font-size:12px;margin-top:8px;display:flex;align-items:center;gap:4px}.error-message i{font-size:14px}.badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:700;text-transform:uppercase}.badge.badge-success{background:#0f03;color:#0f0}.badge.badge-warning{background:#ffa50033;color:#ff6b00}.badge.badge-danger{background:#f003;color:red}.badge.badge-info{background:#00a8ff33;color:#00a8ff}.badge.badge-gold{background:#ffd70033;color:gold}.tabs{display:flex;gap:8px;margin-bottom:24px;justify-content:center;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.tabs::-webkit-scrollbar{height:4px}.tabs::-webkit-scrollbar-track{background:#ffffff0d}.tabs::-webkit-scrollbar-thumb{background:#0f0;border-radius:2px}.tabs .tab-item{padding:12px 24px;background:transparent;border:none;color:#999;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;position:relative;display:flex;align-items:center;gap:8px;flex-shrink:0}.tabs .tab-item i{font-size:15px}.tabs .tab-item:hover{color:#fff}.tabs .tab-item.active{color:#0f0}.tabs .tab-item.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:#0f0}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1040;padding:24px;animation:fadeIn .3s ease}.modal-content{background:#1a1a1a;border-radius:12px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:slideIn .3s ease;box-shadow:0 20px 60px #000c}.modal-content .modal-header{padding:24px;border-bottom:1px solid #2a2a2a;display:flex;justify-content:space-between;align-items:center}.modal-content .modal-header h3{font-size:20px;color:#fff;margin:0}.modal-content .modal-header .close-btn{background:none;border:none;color:#999;font-size:20px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.modal-content .modal-header .close-btn:hover{background:#2a2a2a;color:#fff}.modal-content .modal-body{padding:24px}.modal-content .modal-footer{padding:24px;border-top:1px solid #2a2a2a;display:flex;gap:16px;justify-content:flex-end}.empty-state{text-align:center;padding:48px 24px;color:#999}.empty-state .empty-icon{font-size:64px;color:#2a2a2a;margin-bottom:24px}.empty-state .empty-title{font-size:20px;color:#fff;margin-bottom:8px}.empty-state .empty-description{font-size:15px;color:#999;margin-bottom:24px}.loading-spinner{width:40px;height:40px;border:4px solid #2a2a2a;border-top-color:#0f0;border-radius:50%;animation:spin 1s linear infinite}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:1050}.loading-overlay .loading-content{text-align:center}.loading-overlay .loading-content .loading-text{margin-top:24px;color:#fff;font-size:18px}.bottom-nav{position:fixed;bottom:0;height:60px;left:0;right:0;background:#1a1a1a;display:flex;justify-content:space-around;align-items:flex-end;padding:4px 0 max(4px,env(safe-area-inset-bottom));box-shadow:0 -2px 10px #0000004d;z-index:1030}.bottom-nav .nav-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 8px;color:#999;text-decoration:none;transition:all .2s ease;position:relative}.bottom-nav .nav-item i{font-size:20px;transition:transform .2s ease}.bottom-nav .nav-item span{font-size:11px;font-weight:500}.bottom-nav .nav-item .badge-dot{position:absolute;top:6px;right:calc(50% - 16px);width:8px;height:8px;background:red;border-radius:50%;border:2px solid #1a1a1a}.bottom-nav .nav-item.active{color:#0f0}.bottom-nav .nav-item.active i{transform:translateY(-2px)}.bottom-nav .nav-item:active{transform:scale(.95)}.bottom-nav .nav-item.nav-item-center{margin-top:-16px}.bottom-nav .nav-item.nav-item-center .center-btn{width:50px;height:50px;background:linear-gradient(135deg,#0f0,#0c0);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 0 20px 1px #00ff0029;border:3px solid #1a1a1a;transition:all .2s ease}.bottom-nav .nav-item.nav-item-center .center-btn i{font-size:24px;color:#000}.bottom-nav .nav-item.nav-item-center span{color:#999;margin-top:2px;font-size:11px}.bottom-nav .nav-item.nav-item-center.active .center-btn{background:linear-gradient(135deg,#0f0,#0d0);box-shadow:0 0 20px 1px #00ff0029}.bottom-nav .nav-item.nav-item-center.active span{color:#0f0}.bottom-nav .nav-item.nav-item-center:hover .center-btn{transform:translateY(-3px);box-shadow:0 6px 16px #00ff0080}@media (max-width: 768px){.desktop-only{display:none!important}}@media (min-width: 769px){.mobile-only{display:none!important}.bottom-nav{display:none}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0a0a0a;color:#fff;font-size:15px;line-height:1.5;overflow-x:hidden}#app{width:100%;min-height:100vh;padding-top:30px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#1a1a1a}::-webkit-scrollbar-thumb{background:#333;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#999}a{color:#00a8ff;text-decoration:none;transition:color .2s ease}a:hover{color:#33b8ff}button{border:none;outline:none;cursor:pointer;font-family:inherit;transition:all .2s ease}button:disabled{cursor:not-allowed;opacity:.6}input,textarea{font-family:inherit;font-size:inherit;outline:none;border:none}img{max-width:100%;display:block}ul,ol{list-style:none}.container{max-width:1440px;margin:0 auto;padding:0 16px}@media (min-width: 1024px){.container{padding:0 24px}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:#0f0}.text-secondary{color:#999}.text-danger{color:red}.text-gold{color:gold}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.mt-sm{margin-top:8px}.mt-md{margin-top:16px}.mt-lg{margin-top:24px}.mb-sm{margin-bottom:8px}.mb-md{margin-bottom:16px}.mb-lg{margin-bottom:24px}.ml-sm{margin-left:8px}.ml-md{margin-left:16px}.ml-lg{margin-left:24px}.mr-sm{margin-right:8px}.mr-md{margin-right:16px}.mr-lg{margin-right:24px}.pt-sm{padding-top:8px}.pt-md{padding-top:16px}.pt-lg{padding-top:24px}.pb-sm{padding-bottom:8px}.pb-md{padding-bottom:16px}.pb-lg{padding-bottom:24px}.pl-sm{padding-left:8px}.pl-md{padding-left:16px}.pl-lg{padding-left:24px}.pr-sm{padding-right:8px}.pr-md{padding-right:16px}.pr-lg{padding-right:24px}.hidden{display:none!important}.visible{display:block!important}@media (max-width: 768px){.hide-mobile{display:none!important}}@media (min-width: 768px){.show-mobile{display:none!important}}.card{background-color:#1a1a1a;border-radius:12px;padding:16px;box-shadow:0 2px 4px #0000004d}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading{animation:spin 1s linear infinite}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .3s ease}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.slide-in{animation:slideIn .3s ease}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ellipsis-2{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.ellipsis-3{display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}
