*{margin:0;padding:0;box-sizing:border-box;}html,body{height:100%;font-family:'Inter',sans-serif;user-select:none;-webkit-user-select:none;overflow-x:hidden;}body{background-image:linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.6)),url('../img/fondo3.webp');background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:scroll;min-height:100vh;min-height:100svh;color:#d1d5db;}.page-wrapper{min-height:100vh;min-height:100svh;display:flex;flex-direction:column;position:relative;z-index:1;}main{flex-grow:1;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;}header{background:rgba(0,0,0,.85);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border-bottom:1px solid rgba(250,204,21,.15);position:sticky;top:0;z-index:50;}.site-title-white{color:#ffffff;font-weight:900;letter-spacing:-.5px;}.site-title-yellow{color:#facc15;font-weight:900;letter-spacing:-.5px;}.user-card{background:rgba(17,17,17,.95);border:1px solid #333333;border-radius:1.25rem;padding:1.25rem 1rem;box-shadow:0 15px 35px rgba(0,0,0,.8);backdrop-filter:blur(10px);position:relative;overflow:hidden;width:100%;max-width:400px;margin:0 auto;}.user-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#facc15,#f59e0b);}.btn-google{background:linear-gradient(135deg,#facc15,#eab308);color:#000000;font-weight:700;padding:.85rem 1.5rem;border-radius:3rem;border:none;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;gap:.75rem;width:100%;box-shadow:0 6px 20px rgba(250,204,21,.35);font-size:1rem;letter-spacing:.3px;}.btn-google:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 12px 30px rgba(250,204,21,.6);}.btn-google:active{transform:scale(.97);}.btn-google svg{width:1.4rem;height:1.4rem;flex-shrink:0;}.btn-secondary{background:transparent;border:1px solid #facc15;color:#facc15;font-weight:600;padding:.4rem 1rem;border-radius:2rem;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;}.btn-secondary:hover{background:#facc15;color:#000000;}.btn-repeat{background:linear-gradient(135deg,#facc15,#eab308);color:#000;font-weight:800;padding:.75rem 1.25rem;border-radius:.75rem;border:none;cursor:pointer;transition:all .25s;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;width:100%;box-shadow:0 6px 15px rgba(250,204,21,.3);font-size:.95rem;}.btn-repeat:hover{transform:scale(1.02);box-shadow:0 10px 25px rgba(250,204,21,.5);}.history-card{background:#0a0a0a;border:1px solid #2a2a2a;border-radius:.85rem;padding:1rem;margin-top:.75rem;}.history-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #1f1f1f;font-size:.9rem;}.history-item:last-child{border-bottom:none;}.verified-box{background:linear-gradient(145deg,#1a1a1a,#0d0d0d);border:1px solid #facc15;border-radius:.85rem;padding:.9rem 1rem;display:flex;align-items:center;gap:.75rem;box-shadow:0 0 20px rgba(250,204,21,.05);margin-bottom:1.25rem;}.verified-box i{color:#facc15;font-size:1.5rem;flex-shrink:0;}.verified-box .text{font-size:.85rem;color:#d1d5db;}.verified-box .text strong{color:#facc15;font-weight:700;display:block;font-size:.9rem;}.user-info-compact{display:flex;align-items:center;gap:.75rem;padding:.25rem 0;flex:1;}.user-info-compact .avatar-container{width:3rem;height:3rem;border-radius:50%;overflow:hidden;flex-shrink:0;border:2px solid #facc15;background:#1a1a1a;display:flex;align-items:center;justify-content:center;}.user-info-compact .avatar-container img{width:100%;height:100%;object-fit:cover;display:none;}.user-info-compact .avatar-container i{font-size:2.2rem;color:#facc15;}.user-info-compact .names{line-height:1.3;}.user-info-compact .names .name{font-weight:700;font-size:1.1rem;color:#fff;}.user-info-compact .names .email{font-size:.75rem;color:#9ca3af;}.user-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:.75rem;border-bottom:1px solid #2a2a2a;margin-bottom:1rem;}.hidden{display:none !important;}footer{background:black;border-top:1px solid #2a2a2a;padding:2.5rem 0 1.5rem 0;text-align:center;color:#9ca3af;margin-top:auto;}footer .footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;font-size:.9rem;font-weight:500;color:#d1d5db;margin-bottom:1rem;}footer .footer-links a{color:#d1d5db;transition:color .2s;text-decoration:none;}footer .footer-links a:hover{color:#facc15;}footer .footer-copy{font-size:.75rem;color:#6b7280;max-width:400px;margin:0 auto;line-height:1.5;}footer .footer-copy a{color:#facc15;font-weight:600;text-decoration:none;}footer .footer-copy a:hover{text-decoration:underline;}.fixed.bottom-0{position:fixed;bottom:0;left:0;right:0;z-index:50;background:rgba(0,0,0,.95);backdrop-filter:blur(12px);border-top:1px solid #2a2a2a;padding:.5rem .75rem;box-shadow:0 -4px 20px rgba(0,0,0,.8);}.badge{background:#ef4444;color:#fff;font-size:.6rem;font-weight:700;border-radius:9999px;padding:.05rem .4rem;position:absolute;top:-.3rem;right:-.3rem;}.badge-container{position:relative;display:inline-flex;}.info-cards{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem;}.info-card{background:#111111;border:1px solid #222222;border-radius:.75rem;padding:1rem 1.25rem;transition:all .3s ease;box-shadow:0 4px 12px rgba(0,0,0,.5);display:flex;align-items:flex-start;gap:.75rem;}.info-card:hover{border-color:#facc15;box-shadow:0 10px 25px rgba(0,0,0,.8),0 0 15px rgba(250,204,21,.15);transform:translateY(-2px);}.info-card .icon{color:#facc15;font-size:1.5rem;flex-shrink:0;margin-top:.1rem;width:2.5rem;text-align:center;}.info-card .content{font-size:.95rem;line-height:1.5;color:#d1d5db;}.info-card .content strong{color:#facc15;font-weight:700;}.info-card .content .sub{display:block;font-size:.85rem;color:#9ca3af;margin-top:.2rem;}.user-card-compact h2{font-size:1.1rem;font-weight:700;text-align:center;color:#ffffff;margin-bottom:1rem;font-family:'Montserrat',sans-serif;}.user-banner{width:100%;margin-bottom:1rem;line-height:0;}.user-banner img{width:100%;height:auto;display:block;}.favorites-item{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;border-bottom:1px solid #1f1f1f;}.favorites-item:last-child{border-bottom:none;}.favorites-item .fav-img{width:2.5rem;height:2.5rem;object-fit:cover;border-radius:.5rem;flex-shrink:0;}.favorites-item .fav-info{flex:1;}.favorites-item .fav-info .name{font-weight:600;color:#fff;font-size:.9rem;}.favorites-item .fav-info .price{font-size:.8rem;color:#facc15;font-weight:700;}.fav-remove-btn{background:transparent;border:1px solid #ef4444;color:#ef4444;border-radius:.5rem;padding:.2rem .6rem;font-size:.7rem;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.3rem;white-space:nowrap;}.fav-remove-btn:hover{background:#ef4444;color:#fff;}#no-favorites-msg{text-align:center;padding:1rem 0;}#no-favorites-msg i{color:#6b7280;font-size:1.5rem;margin-bottom:.25rem;}#no-favorites-msg p{color:#9ca3af;font-size:.85rem;}#no-favorites-msg a{color:#facc15;font-weight:600;text-decoration:none;font-size:.8rem;}#no-favorites-msg a:hover{text-decoration:underline;}
        .modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.85);z-index:1000;display:none;align-items:center;justify-content:center;backdrop-filter:blur(5px);}.modal-overlay.show{display:flex;}.modal-content{background:#111111;border:2px solid #facc15;border-radius:1.25rem;padding:2rem;max-width:500px;width:90%;box-shadow:0 20px 40px rgba(0,0,0,.9);color:#d1d5db;}.modal-content h2{color:#facc15;font-family:'Montserrat',sans-serif;font-weight:700;text-align:center;margin-bottom:1.5rem;font-size:1.6rem;}.modal-content .form-group{margin-bottom:1.2rem;}.modal-content .form-group label{display:block;font-size:.9rem;font-weight:600;color:#9ca3af;margin-bottom:.3rem;}.modal-content .form-group input{width:100%;padding:.6rem .8rem;background:#1a1a1a;border:1px solid #333;border-radius:.5rem;color:#fff;font-size:1rem;}.modal-content .form-group input:focus{outline:none;border-color:#facc15;box-shadow:0 0 0 2px rgba(250,204,21,.2);}.modal-content .form-group input[type="file"]{padding:.4rem;background:#0f0f0f;}.modal-content .form-row{display:flex;gap:1rem;}.modal-content .form-row .form-group{flex:1;}.modal-content .modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem;}.modal-content .modal-actions button{padding:.6rem 1.5rem;border-radius:.5rem;font-weight:700;border:none;cursor:pointer;transition:all .2s;}.modal-content .modal-actions .btn-cancel{background:#374151;color:#fff;}.modal-content .modal-actions .btn-cancel:hover{background:#4b5563;}.modal-content .modal-actions .btn-save{background:linear-gradient(135deg,#facc15,#eab308);color:#000;}.modal-content .modal-actions .btn-save:hover{transform:scale(1.02);}.file-input-display{display:block;width:100%;padding:.5rem;background:#1a1a1a;border:1px solid #333;border-radius:.5rem;color:#9ca3af;font-size:.9rem;cursor:pointer;}.file-input-display.border-green-500{border-color:#10b981;color:#10b981;}.file-input-display.border-red-500{border-color:#ef4444;color:#ef4444;}.file-count-text{font-size:.75rem;color:#9ca3af;margin-top:.2rem;}
        .product-mgmt-card{background:#0a0a0a;border:1px solid #2a2a2a;border-radius:.85rem;padding:1rem;margin-top:1rem;}
        .product-mgmt-item{display:flex;flex-direction:column;gap:.7rem;padding:.9rem 0;border-bottom:1px solid #1f1f1f;}
        .product-mgmt-item:first-child{padding-top:.2rem;}
        .product-mgmt-item:last-child{border-bottom:none;padding-bottom:.2rem;}
        .mgmt-head{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;flex-wrap:wrap;}
        .mgmt-name{font-weight:700;color:#fff;font-size:.95rem;line-height:1.3;word-break:break-word;}
        .mgmt-price{color:#facc15;font-weight:800;font-size:1rem;white-space:nowrap;font-family:'Montserrat',sans-serif;}
        .mgmt-meta{display:flex;flex-wrap:wrap;gap:.4rem .8rem;font-size:.75rem;color:#9ca3af;}
        .mgmt-meta-item{display:inline-flex;align-items:center;gap:.3rem;line-height:1.2;}
        .mgmt-meta-item i{font-size:.65rem;}
        .mgmt-meta-item.status.active{color:#10b981;}
        .mgmt-meta-item.status.active i{color:#10b981;}
        .mgmt-meta-item.status.inactive{color:#ef4444;}
        .mgmt-meta-item.status.inactive i{color:#ef4444;}
        .mgmt-meta-item.sold{color:#ef4444;font-weight:700;}
        .mgmt-actions{display:flex;flex-wrap:wrap;gap:.4rem;}
        .mgmt-actions button{background:#1a1a1a;border:1px solid #333;border-radius:.5rem;padding:.35rem .65rem;font-size:.7rem;font-weight:600;cursor:pointer;transition:all .2s;color:#d1d5db;display:inline-flex;align-items:center;gap:.3rem;}
        .mgmt-actions button:hover{border-color:#facc15;color:#facc15;}
        .mgmt-actions button.danger:hover{border-color:#ef4444;color:#ef4444;}
        .mgmt-actions .mgmt-state-btn{border-color:#10b981;color:#10b981;}
        .mgmt-actions .mgmt-state-btn:hover{background:#10b981;color:#000;}
        .mgmt-actions .mgmt-state-btn.sold{border-color:#ef4444;color:#ef4444;}
        .mgmt-actions .mgmt-state-btn.sold:hover{background:#ef4444;color:#fff;}
        .msg-item{background:#1a1a1a;border-radius:.5rem;padding:.6rem .8rem;margin-bottom:.5rem;font-size:.85rem;}
        .msg-item .msg-header{display:flex;justify-content:space-between;font-size:.75rem;color:#9ca3af;}
        .msg-item .msg-body{color:#e5e5e5;margin-top:.2rem;}
        .msg-badge{background:#ef4444;color:#fff;border-radius:9999px;padding:.1rem .5rem;font-size:.65rem;font-weight:700;margin-left:.5rem;}
        .tab-bar{display:flex;gap:.5rem;margin-bottom:1rem;border-bottom:1px solid #2a2a2a;padding-bottom:.5rem;justify-content:center;}
        .tab-btn{background:transparent;border:none;color:#9ca3af;font-weight:600;padding:.4rem .8rem;cursor:pointer;border-radius:.5rem;transition:all .2s;}
        .tab-btn.active{color:#facc15;background:#1a1a1a;}
        .tab-btn:hover{color:#facc15;}
        .tab-content{display:none;}
        .tab-content.active{display:block;}
        .load-more-btn{background:#1a1a1a;border:1px solid #333;border-radius:.5rem;padding:.3rem .8rem;font-size:.75rem;font-weight:600;cursor:pointer;color:#d1d5db;margin-top:.5rem;width:100%;text-align:center;}
        .load-more-btn:hover{border-color:#facc15;color:#facc15;}
        .profile-edit-btn{background:transparent;border:1px solid #facc15;color:#facc15;font-weight:600;padding:.2rem .6rem;border-radius:.5rem;cursor:pointer;font-size:.7rem;transition:all .2s;}
        .profile-edit-btn:hover{background:#facc15;color:#000;}
        .chat-container{background:#0a0a0a;border:1px solid #2a2a2a;border-radius:.85rem;padding:1rem;margin-top:1rem;max-height:400px;overflow-y:auto;}
        .chat-message{display:flex;flex-direction:column;margin-bottom:.5rem;padding:.5rem;border-radius:.5rem;background:#1a1a1a;border-left:2px solid #facc15;}
        .chat-message.own{background:#1f1f1f;border-left-color:#3b82f6;}
        .chat-message .meta{display:flex;justify-content:space-between;font-size:.7rem;color:#9ca3af;margin-bottom:.2rem;}
        .chat-message .text{color:#e5e5e5;font-size:.9rem;word-wrap:break-word;}
        .chat-input-area{display:flex;gap:.5rem;margin-top:.5rem;}
        .chat-input-area input{flex:1;background:#1a1a1a;border:1px solid #333;border-radius:.5rem;padding:.5rem .8rem;color:#fff;font-size:.9rem;outline:none;}
        .chat-input-area input:focus{border-color:#facc15;}
        .chat-input-area button{background:linear-gradient(135deg,#facc15,#eab308);color:#000;font-weight:700;padding:.5rem 1rem;border:none;border-radius:.5rem;cursor:pointer;}
        .chat-product-info{display:flex;align-items:center;gap:.75rem;background:#111;border-radius:.5rem;padding:.5rem .8rem;margin-bottom:.5rem;border:1px solid #2a2a2a;}
        .chat-product-info img{width:2.5rem;height:2.5rem;object-fit:cover;border-radius:.5rem;}
        .chat-product-info .details{flex:1;}
        .chat-product-info .details .name{color:#fff;font-weight:600;font-size:.9rem;}
        .chat-product-info .details .seller{color:#9ca3af;font-size:.75rem;}
        .chat-product-info .details .price{color:#facc15;font-weight:700;font-size:.85rem;}
        .chat-back-btn{background:transparent;border:1px solid #facc15;color:#facc15;padding:.2rem .6rem;border-radius:.5rem;font-size:.7rem;cursor:pointer;margin-bottom:.5rem;display:inline-flex;align-items:center;gap:.3rem;}
        .chat-back-btn:hover{background:#facc15;color:#000;}
        .publish-form-container{background:#111;border:1px solid #2a2a2a;border-radius:.85rem;padding:1rem;margin-top:1rem;overflow:hidden;max-height:0;opacity:0;transition:max-height .4s ease, opacity .4s ease, padding .4s ease;padding:0 1rem;}
        .publish-form-container.open{max-height:1400px;opacity:1;padding:1rem 1rem 1.5rem 1rem;}
        .publish-form-container .form-group{margin-bottom:1.2rem;}
        .publish-form-container .form-group label{display:block;font-size:.9rem;font-weight:600;color:#9ca3af;margin-bottom:.3rem;}
        .publish-form-container .form-group input,
        .publish-form-container .form-group textarea,
        .publish-form-container textarea#productDesc,
        #publishForm #productDesc{width:100%;padding:.6rem .8rem;background:#1a1a1a !important;border:1px solid #333 !important;border-radius:.5rem;color:#fff !important;font-size:1rem;font-family:'Inter',sans-serif;box-shadow:none;-webkit-appearance:none;appearance:none;}
        .publish-form-container .form-group input:focus,
        .publish-form-container .form-group textarea:focus,
        #publishForm #productDesc:focus{outline:none;border-color:#facc15 !important;box-shadow:0 0 0 2px rgba(250,204,21,.2) !important;}
        .publish-form-container .form-group input[type="file"]{padding:.4rem;background:#0f0f0f !important;}
        .publish-form-container .form-group textarea,
        #publishForm #productDesc{resize:vertical;min-height:90px;line-height:1.4;}
        .publish-form-container .form-group textarea::placeholder,
        #publishForm #productDesc::placeholder{color:#6b7280 !important;opacity:1;}
        .publish-form-container .form-row{display:flex;gap:1rem;}
        .publish-form-container .form-row .form-group{flex:1;}
        .publish-form-container .modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem;}
        .publish-form-container .modal-actions button{padding:.6rem 1.5rem;border-radius:.5rem;font-weight:700;border:none;cursor:pointer;transition:all .2s;}
        .publish-form-container .modal-actions .btn-cancel{background:#374151;color:#fff;}
        .publish-form-container .modal-actions .btn-cancel:hover{background:#4b5563;}
        .publish-form-container .modal-actions .btn-save{background:linear-gradient(135deg,#facc15,#eab308);color:#000;}
        .publish-form-container .modal-actions .btn-save:hover{transform:scale(1.02);}
        .publish-form-container .file-count-text{font-size:.75rem;color:#9ca3af;margin-top:.2rem;}
        .conversation-item{background:#0a0a0a;border:1px solid #2a2a2a;border-radius:.5rem;padding:.5rem .7rem;margin-bottom:.5rem;cursor:pointer;transition:all .2s;display:flex;justify-content:space-between;align-items:center;}
        .conversation-item:hover{background:#1a1a1a;border-color:#facc15;}
        .conversation-item .conv-info{display:flex;flex-direction:column;gap:.1rem;}
        .conversation-item .conv-info .conv-product{font-weight:600;color:#fff;font-size:.85rem;}
        .conversation-item .conv-info .conv-last{font-size:.75rem;color:#9ca3af;}
        .conversation-item .conv-info .conv-other{font-size:.7rem;color:#facc15;}
        .conversation-item .conv-time{font-size:.65rem;color:#6b7280;}
        .bottom-nav-bar {
            padding-top: 0.5rem;
            padding-bottom: max(20px, env(safe-area-inset-bottom));
        }
        .bottom-nav-bar .nav-item {
            gap: 0.2rem;
        }
        .bottom-nav-bar .nav-item span {
            font-size: 0.65rem;
            line-height: 1.1;
        }

.google-login-error{margin-top:.75rem;padding:.6rem .8rem;background:rgba(127,29,29,.35);border:1px solid #ef4444;border-radius:.5rem;color:#fecaca;font-size:.8rem;line-height:1.35;text-align:center;}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}html{scroll-behavior:auto !important}}

.publish-previews{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.6rem;}
.publish-previews img{width:64px;height:64px;object-fit:cover;border-radius:.5rem;border:1px solid #333333;}
.publish-error{margin-top:.8rem;padding:.6rem .8rem;border:1px solid #ef4444;border-radius:.5rem;font-size:.8rem;line-height:1.35;text-align:center;}
.modal-content input:not([type="file"]),
.modal-content textarea{width:100%;padding:.6rem .8rem;background:#1a1a1a;border:1px solid #333;border-radius:.5rem;color:#fff;font-size:1rem;font-family:'Inter',sans-serif;}
.modal-content input:not([type="file"]):focus,
.modal-content textarea:focus{outline:none;border-color:#facc15;box-shadow:0 0 0 2px rgba(250,204,21,.2);}
.modal-content textarea{resize:vertical;min-height:80px;}
.char-counter{display:block;text-align:right;font-size:.7rem;color:#6b7280;margin-top:.2rem;font-family:'Inter',sans-serif;}
.chat-load-more-btn{width:100%;background:#1a1a1a;border:1px solid #333;border-radius:.5rem;padding:.45rem .8rem;font-size:.75rem;font-weight:600;color:#facc15;cursor:pointer;margin-bottom:.6rem;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.4rem;font-family:'Inter',sans-serif;}
.chat-load-more-btn:hover{background:#2a2a2a;border-color:#facc15;}
.chat-load-more-btn:disabled{opacity:.6;cursor:default;}
.chat-typing-indicator{display:flex;gap:.25rem;align-items:center;padding:.45rem .75rem;background:#1a1a1a;border-radius:.6rem;width:fit-content;margin:.3rem 0 .4rem .5rem;border-left:2px solid #3b82f6;}
.chat-typing-indicator.hidden{display:none;}
.chat-typing-indicator span{width:.4rem;height:.4rem;background:#facc15;border-radius:50%;animation:typing-bounce 1.2s infinite;display:inline-block;}
.chat-typing-indicator span:nth-child(2){animation-delay:.2s;}
.chat-typing-indicator span:nth-child(3){animation-delay:.4s;}
@keyframes typing-bounce{0%,60%,100%{transform:translateY(0);opacity:.4;}30%{transform:translateY(-4px);opacity:1;}}
.chat-message .msg-status{font-size:.65rem;color:#facc15;margin-top:.15rem;text-align:right;}

#card-logout-btn{font-size:.7rem;padding:.28rem .7rem;gap:.3rem;line-height:1.1;}