.navbar{background:var(--white);box-shadow:var(--shadow);position:sticky;top:0;z-index:100}.navbar-container{max-width:1400px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.navbar-brand{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--gray-900);font-size:1.5rem;font-weight:700}.brand-icon{font-size:2rem}.navbar-menu{display:flex;align-items:center;gap:1rem}.navbar-link{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;text-decoration:none;color:var(--gray-700);border-radius:.5rem;transition:all .2s;font-size:.95rem}.navbar-link:hover{background-color:var(--gray-100);color:var(--primary)}.navbar-user{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;color:var(--gray-700)}.user-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.user-name{font-size:.95rem;font-weight:500}@media (max-width: 768px){.navbar-container{padding:1rem}.navbar-menu{gap:0}.navbar-link span,.user-name,.brand-text,.navbar-menu .btn span{display:none}.navbar-menu .btn{padding:.5rem;min-width:auto;width:40px;height:40px;display:flex;align-items:center;justify-content:center}}.footer{background:var(--gray-900);color:var(--gray-300);margin-top:4rem;padding:2rem 0}.footer-container{max-width:1400px;margin:0 auto;padding:0 2rem}.footer-content{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:2rem}.footer-brand{display:flex;flex-direction:column;gap:.5rem}.footer-brand-icon{font-size:2rem}.footer-brand-text{font-size:1.5rem;font-weight:700;color:var(--white)}.footer-tagline{font-size:.95rem;font-style:italic;color:var(--gray-400)}.footer-links{display:flex;gap:1.5rem;flex-wrap:wrap}.footer-link{color:var(--gray-300);text-decoration:none;transition:color .2s;font-size:.95rem}.footer-link:hover{color:var(--white)}.footer-bottom{padding-top:2rem;border-top:1px solid var(--gray-800);text-align:center}.footer-bottom p{margin-bottom:.5rem;font-size:.875rem}.footer-disclaimer{font-size:.8rem;color:var(--gray-500);max-width:800px;margin:.5rem auto 0}@media (max-width: 768px){.footer-container{padding:0 1rem}.footer-content{flex-direction:column;gap:1.5rem}.footer-links{flex-direction:column;gap:1rem}}.home{width:100%}.hero{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:var(--white);padding:4rem 2rem;border-radius:1rem;margin-bottom:3rem;text-align:center}.hero-content{max-width:600px;margin:0 auto}.hero-title{font-size:3rem;font-weight:700;margin-bottom:.5rem}.hero-subtitle{font-size:1.5rem;font-weight:500;margin-bottom:1rem;opacity:.95;font-style:italic}.hero-description{font-size:1.25rem;margin-bottom:2rem;opacity:.9}.btn-large{padding:1rem 2rem;font-size:1.1rem}.raffles-section{margin-top:3rem}.section-title{font-size:2rem;font-weight:600;margin-bottom:2rem;color:var(--gray-900)}@media (max-width: 768px){.hero{padding:2rem 1rem}.hero-title{font-size:2rem}.hero-description{font-size:1rem}.raffles-grid{grid-template-columns:1fr}}.dashboard{width:100%}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.dashboard-header h1{font-size:2rem;font-weight:600;color:var(--gray-900)}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:3rem}.stat-card{background:var(--white);border-radius:.75rem;padding:1.5rem;box-shadow:var(--shadow);display:flex;align-items:center;gap:1rem}.stat-icon{width:48px;height:48px;border-radius:.5rem;background:var(--primary);color:var(--white);display:flex;align-items:center;justify-content:center}.stat-content{flex:1}.stat-value{font-size:2rem;font-weight:700;color:var(--gray-900)}.stat-label{font-size:.875rem;color:var(--gray-600)}.my-raffles-section{margin-top:2rem}.my-raffles-section h2{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;color:var(--gray-900)}.status-badge{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500}.status-active{background-color:#d1fae5;color:#065f46}.status-paused{background-color:#fef3c7;color:#92400e}.status-finished{background-color:var(--gray-200);color:var(--gray-700)}.raffle-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:.5rem}.raffle-meta-info{margin-bottom:.75rem;display:flex;flex-direction:column;gap:.25rem}.raffle-organizer,.raffle-date{font-size:.875rem;color:var(--gray-600)}.raffle-organizer strong,.raffle-date strong{color:var(--gray-700);font-weight:600}.raffles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.raffle-card{background:var(--white);border-radius:.75rem;overflow:hidden;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s;text-decoration:none;color:inherit;display:block}.raffle-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.raffle-image{width:100%;height:200px;object-fit:cover}.raffle-content{padding:1.5rem}.raffle-title{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:var(--gray-900)}.raffle-description{color:var(--gray-600);margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.raffle-price{font-size:1.1rem;font-weight:600;color:var(--primary)}.empty-state{text-align:center;padding:3rem;color:var(--gray-500)}@media (max-width: 768px){.dashboard-header{flex-direction:column;align-items:flex-start;gap:1rem}.dashboard-stats{grid-template-columns:1fr}}.create-raffle{max-width:800px;margin:0 auto}.create-raffle-header{margin-bottom:2rem}.create-raffle-header h1{font-size:2rem;font-weight:600;color:var(--gray-900)}.mp-warning-banner{background:linear-gradient(135deg,#fff3cd,#ffe69c);border:2px solid #ffc107;border-radius:.75rem;padding:1.5rem;margin-bottom:2rem;display:flex;align-items:flex-start;gap:1rem;box-shadow:var(--shadow)}.mp-warning-banner svg{color:#856404;flex-shrink:0;margin-top:.25rem}.mp-warning-content{flex:1}.mp-warning-content h3{font-size:1.25rem;font-weight:600;color:#856404;margin:0 0 .5rem}.mp-warning-content p{color:#856404;margin:0 0 1rem;line-height:1.5}.mp-warning-content .btn{display:inline-flex;align-items:center;gap:.5rem;background:#ffc107;color:#856404;border:none;font-weight:600}.mp-warning-content .btn:hover{background:#ffb300;color:#856404}.create-raffle-form{background:var(--white);border-radius:.75rem;padding:2rem;box-shadow:var(--shadow)}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--gray-700)}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-label span{font-weight:500;color:var(--gray-700)}.form-help{display:block;margin-top:.5rem;font-size:.875rem;color:var(--gray-500)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.input-file{padding:.5rem;border:2px dashed var(--gray-300);border-radius:.5rem;width:100%;cursor:pointer;transition:border-color .2s}.input-file:hover{border-color:var(--primary)}.image-preview{margin-top:1rem}.image-preview img{width:100%;max-width:400px;height:auto;border-radius:.5rem;box-shadow:var(--shadow)}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--gray-200)}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%}}.ticket-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:.5rem;padding:1rem;background:var(--gray-50);border-radius:.5rem}.ticket-cell{aspect-ratio:2 / 1;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px solid var(--gray-300);border-radius:.375rem;cursor:pointer;transition:all .2s;position:relative;background:var(--white);font-size:.75rem;font-weight:600}.ticket-available{border-color:var(--gray-300);color:var(--gray-700)}.ticket-available:hover{border-color:var(--primary);background:var(--primary);color:var(--white);transform:scale(1.05);box-shadow:var(--shadow-md)}.ticket-paid,.ticket-cash{border-color:var(--success);background:var(--success);color:var(--white);cursor:not-allowed}.ticket-reserved{border-color:#f59e0b;background:#fef3c7;color:#92400e;cursor:not-allowed;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.ticket-number{font-size:.875rem;font-weight:700}.ticket-status-icon{position:absolute;top:2px;right:2px;font-size:.625rem;opacity:.8}@media (max-width: 768px){.ticket-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:.25rem;padding:.5rem}.ticket-cell{font-size:.625rem;min-height:40px;padding:.25rem}.ticket-number{font-size:.7rem;font-weight:700}.ticket-status-icon{font-size:.5rem;top:1px;right:1px}}@media (max-width: 480px){.ticket-grid{grid-template-columns:1fr 1fr 1fr 1fr}.ticket-cell{min-height:35px;font-size:.6rem}.ticket-number{font-size:.65rem}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:var(--white);border-radius:1rem;padding:2rem;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:var(--shadow-lg)}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;cursor:pointer;color:var(--gray-500);padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:.5rem;transition:all .2s}.modal-close:hover{background:var(--gray-100);color:var(--gray-900)}.ticket-modal-header{text-align:center;margin-bottom:2r0em;padding-bottom:1.5rem}.ticket-number-display{font-size:2rem;font-weight:700;color:var(--primary);margin-bottom:1rem}.ticket-image{width:100%;max-width:200px;height:150px;object-fit:cover;border-radius:.5rem;margin:0 auto 1rem;display:block}.ticket-info{margin-top:1rem}.ticket-title{font-size:1.25rem;font-weight:600;color:var(--gray-900);margin-bottom:.5rem}.ticket-price{font-size:1.5rem;font-weight:700;color:var(--primary)}.profile-warning{background:#fff3cd;border:1px solid #ffc107;border-radius:.5rem;padding:1rem;margin-bottom:1rem;color:#856404;font-size:.9rem}.profile-warning a{color:var(--primary);text-decoration:underline;font-weight:600}.profile-warning a:hover{color:var(--primary-dark)}.reservation-timer{display:flex;align-items:center;gap:.5rem;background:#dbeafe;border:1px solid #3b82f6;border-radius:.5rem;padding:1rem;margin-bottom:1rem;color:#1e40af;font-size:.95rem;font-weight:500}.reservation-timer strong{font-size:1.1rem;color:#1e3a8a}.timer-warning{margin-left:auto;color:#dc2626;font-weight:600;font-size:.85rem}.reservation-expired{text-align:center;padding:2rem;background:#fee2e2;border:1px solid #ef4444;border-radius:.5rem;color:#991b1b;margin-bottom:1rem}.reservation-expired p{margin-bottom:1rem;font-size:1rem;font-weight:500}.ticket-form{display:flex;flex-direction:column}.ticket-sold{text-align:center;padding:2rem;color:var(--gray-600)}.buyer-info{margin-top:1.5rem;padding:1rem;background:var(--gray-50);border-radius:.5rem;text-align:left}.buyer-info p{margin-bottom:.5rem}.cash-form-header{margin-bottom:1.5rem;text-align:center}.cash-form-header h4{font-size:1.25rem;font-weight:600;color:var(--gray-900);margin-bottom:.5rem}.cash-form-note{font-size:.875rem;color:var(--gray-600)}.form-actions{display:flex;gap:1rem;margin-top:1rem;flex-wrap:wrap}.ticket-form .form-actions{margin-top:0;padding-top:0;border:0}.form-group{margin-bottom:1rem}.form-actions .btn{flex:1;min-width:150px}.login-message{text-align:center;color:var(--gray-600);padding:1rem;background:var(--gray-50);border-radius:.5rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;flex-shrink:0}.checkbox-label span{font-size:.9rem;color:var(--gray-700);line-height:1.5}.terms-link{color:var(--primary);text-decoration:underline;transition:color .2s}.terms-link:hover{color:var(--primary-dark)}@media (max-width: 768px){.modal-content{padding:1.5rem}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}.lottery-winner-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.lottery-winner-modal{background:var(--white);border-radius:.75rem;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.lottery-winner-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--gray-200)}.lottery-winner-modal-header h2{font-size:1.5rem;font-weight:600;color:var(--gray-900);margin:0}.close-button{background:none;border:none;cursor:pointer;color:var(--gray-500);padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:all .2s}.close-button:hover{background:var(--gray-100);color:var(--gray-900)}.lottery-winner-modal-form{padding:1.5rem}.lottery-winner-modal-form .form-group{margin-bottom:1.5rem}.lottery-winner-modal-form label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--gray-700)}.lottery-winner-modal-form .input{width:100%;padding:.75rem;border:1px solid var(--gray-300);border-radius:.5rem;font-size:1rem;transition:border-color .2s}.lottery-winner-modal-form .input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.lottery-winner-modal-form .form-help{display:block;margin-top:.5rem;font-size:.875rem;color:var(--gray-500)}.lottery-conditions-reminder{background:var(--gray-50);border-left:4px solid var(--primary);padding:1rem;border-radius:.5rem;margin-bottom:1.5rem}.lottery-conditions-reminder strong{display:block;margin-bottom:.5rem;color:var(--gray-900)}.lottery-conditions-reminder p{margin:0;color:var(--gray-700);line-height:1.6}.lottery-winner-modal-form .form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--gray-200)}@media (max-width: 768px){.lottery-winner-modal{max-width:100%}.lottery-winner-modal-form .form-actions{flex-direction:column-reverse}.lottery-winner-modal-form .form-actions .btn{width:100%}}.raffle-view{width:100%}.back-button{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.5rem 1rem;background:none;border:none;color:var(--gray-600);cursor:pointer;font-size:.95rem;transition:color .2s}.back-button:hover{color:var(--primary)}.raffle-header{background:var(--white);border-radius:.75rem;padding:2rem;box-shadow:var(--shadow);margin-bottom:2rem}.raffle-header-content{display:grid;grid-template-columns:300px 1fr;gap:2rem}.raffle-header-image{width:100%;height:300px;object-fit:cover;border-radius:.5rem}.raffle-header-info{display:flex;flex-direction:column;gap:1rem}.raffle-title{font-size:2rem;font-weight:600;color:var(--gray-900)}.raffle-creator{font-size:.95rem;color:var(--gray-500);margin-top:-.5rem;margin-bottom:.5rem}.raffle-creator strong{color:var(--gray-700);font-weight:600}.raffle-date{font-size:.95rem;color:var(--gray-500);margin-top:-.5rem;margin-bottom:.5rem}.raffle-date strong{color:var(--gray-700);font-weight:600}.raffle-description{font-size:1.1rem;color:var(--gray-600);line-height:1.6}.raffle-lottery-conditions{background:var(--gray-50);border-left:4px solid var(--primary);padding:1rem;border-radius:.5rem;margin:1rem 0}.raffle-lottery-conditions strong{display:block;margin-bottom:.5rem;color:var(--gray-900);font-size:.95rem}.raffle-lottery-conditions p{margin:0;color:var(--gray-700);font-size:.95rem;line-height:1.6}.raffle-lottery-result{background:linear-gradient(135deg,var(--success) 0%,#059669 100%);color:var(--white);padding:1rem;border-radius:.5rem;margin:1rem 0;display:flex;flex-direction:column;gap:.5rem}.raffle-lottery-result strong{font-size:.95rem;opacity:.9}.winning-number{font-size:1.5rem;font-weight:700;background:#fff3;padding:.5rem 1rem;border-radius:.5rem;display:inline-block;margin-top:.25rem}.verification-link{color:var(--white);text-decoration:underline;font-size:.9rem;margin-top:.5rem;display:inline-block;transition:opacity .2s}.verification-link:hover{opacity:.8}.raffle-meta{display:flex;gap:2rem;margin-top:1rem}.raffle-price{font-size:1.5rem;font-weight:700;color:var(--primary)}.raffle-total{font-size:1.1rem;color:var(--gray-600);display:flex;align-items:center}.raffle-actions{display:flex;gap:1rem;margin-top:1rem;flex-wrap:wrap}.share-buttons{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.btn-social{padding:.5rem;min-width:auto;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:.5rem;border:none;cursor:pointer;transition:all .2s;color:var(--white);flex-shrink:0}.btn-social svg{width:18px;height:18px;display:block;flex-shrink:0;stroke-width:2}.btn-social:focus{outline:2px solid var(--white);outline-offset:2px}.btn-facebook{background-color:#1877f2}.btn-facebook:hover{background-color:#166fe5}.btn-twitter{background-color:#1da1f2}.btn-twitter:hover{background-color:#1a91da}.btn-whatsapp{background-color:#25d366}.btn-whatsapp:hover{background-color:#20ba5a}.btn-telegram{background-color:#08c}.btn-telegram:hover{background-color:#0077b5}.raffle-result{background:linear-gradient(135deg,var(--success) 0%,#059669 100%);color:var(--white);border-radius:.75rem;padding:2rem;margin-bottom:2rem;box-shadow:var(--shadow-lg)}.raffle-result h2{font-size:1.75rem;margin-bottom:1.5rem}.winners-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.winner-card{background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:.5rem;padding:1.5rem;border:1px solid rgba(255,255,255,.3)}.winner-number{font-size:1.25rem;font-weight:700;margin-bottom:.5rem}.winner-name{font-size:1.1rem;font-weight:500;margin-bottom:.25rem}.winner-phone{font-size:.9rem;opacity:.9}.tickets-section{background:var(--white);border-radius:.75rem;padding:2rem;box-shadow:var(--shadow)}.tickets-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.tickets-section h2{font-size:1.5rem;font-weight:600;color:var(--gray-900);margin:0}.available-count{font-size:1rem;color:var(--primary);font-weight:600;padding:.5rem 1rem;background:var(--primary-light);border-radius:.5rem}@media (max-width: 768px){.raffle-header-content,.raffle-header{display:block}.raffle-header-image{height:200px;width:100%}.raffle-meta{flex-direction:column;gap:.5rem}.raffle-actions{flex-direction:row;flex-wrap:wrap;justify-content:center}.share-buttons{flex-wrap:nowrap;gap:.5rem}.btn-social{width:40px;height:40px;flex-shrink:0}.tickets-section{padding:1rem}.hidden-text-on-mobile{width:40px;height:40px;flex-shrink:0;justify-content:center}.hidden-text-on-mobile svg{width:18px;height:18px;display:block;flex-shrink:0;stroke-width:2}.raffle-actions .hidden-text-on-mobile span{display:none}}.tooltip-wrapper{position:relative;display:inline-block}.tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:.5rem;padding:.5rem .75rem;background:var(--gray-900);color:var(--white);font-size:.875rem;border-radius:.375rem;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .2s;z-index:1000}.tooltip-wrapper:hover .tooltip{opacity:1}.tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--gray-900)}.my-raffles{width:100%}.raffles-list{display:flex;flex-direction:column;gap:1.5rem}.raffle-item{background:var(--white);border-radius:.75rem;padding:1.5rem;box-shadow:var(--shadow);display:grid;grid-template-columns:200px 1fr;gap:1.5rem}.raffle-item-image{width:100%;height:150px;object-fit:cover;border-radius:.5rem}.raffle-item-content{display:flex;flex-direction:column;gap:.75rem}.raffle-item-header{display:flex;justify-content:space-between;align-items:start}.raffle-item-header h3{font-size:1.25rem;font-weight:600;color:var(--gray-900)}.raffle-item-description{color:var(--gray-600);line-height:1.6}.raffle-item-meta-info{margin-bottom:.5rem;display:flex;flex-direction:column;gap:.25rem}.raffle-item-organizer,.raffle-item-date{font-size:.875rem;color:var(--gray-600)}.raffle-item-organizer strong,.raffle-item-date strong{color:var(--gray-700);font-weight:600}.raffle-item-meta{display:flex;gap:.5rem;color:var(--gray-600);font-size:.95rem}.raffle-item-actions{margin-top:.5rem}@media (max-width: 768px){.raffle-item{grid-template-columns:1fr}.raffle-item-image{height:200px}}.settings{max-width:800px;margin:0 auto}.page-header{margin-bottom:2rem}.page-header h1{font-size:2rem;font-weight:600;color:var(--gray-900)}.settings-content{display:flex;flex-direction:column;gap:2rem}.settings-section{background:var(--white);border-radius:.75rem;padding:2rem;box-shadow:var(--shadow)}.settings-section-header{margin-bottom:1.5rem}.settings-section-header h2{font-size:1.5rem;font-weight:600;color:var(--gray-900);margin-bottom:.5rem}.settings-description{color:var(--gray-600);line-height:1.6}.mp-status{display:flex;flex-direction:column;gap:1rem}.mp-connected{display:flex;align-items:start;gap:1rem;padding:1.5rem;background:#d1fae5;border-radius:.5rem;border:1px solid var(--success);position:relative}.success-icon{color:var(--success);flex-shrink:0}.mp-connected h3{font-size:1.1rem;font-weight:600;color:#065f46;margin-bottom:.25rem}.mp-connected p{color:#047857;font-size:.95rem}.mp-info{margin-top:.5rem}.mp-info small{color:#065f46;font-size:.85rem;opacity:.8}.btn-disconnect{margin-left:auto;display:flex;align-items:center;gap:.5rem;background:var(--white);color:var(--gray-700);border:1px solid var(--gray-300)}.btn-disconnect:hover{background:var(--gray-50);border-color:var(--gray-400);color:var(--gray-900)}.mp-disconnected{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:var(--gray-50);border-radius:.5rem;border:1px solid var(--gray-200)}.mp-disconnected>svg{color:var(--gray-500);flex-shrink:0}.mp-disconnected>div{flex:1}.mp-disconnected h3{font-size:1.1rem;font-weight:600;color:var(--gray-900);margin-bottom:.25rem}.mp-disconnected p{color:var(--gray-600);font-size:.95rem}.user-info{display:flex;align-items:center;gap:1.5rem}.user-photo{width:80px;height:80px;border-radius:50%;object-fit:cover}.user-details{flex:1}.user-details p{margin-bottom:.5rem;color:var(--gray-700)}.user-details strong{color:var(--gray-900)}.profile-form{display:flex;flex-direction:column;gap:1.5rem}.photo-upload{display:flex;flex-direction:column;gap:1rem;align-items:flex-start}.photo-preview{width:150px;height:150px;border-radius:50%;object-fit:cover;border:3px solid var(--gray-200)}.form-group label{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;font-weight:500;color:var(--gray-700)}.textarea{resize:vertical;min-height:100px}.form-actions{margin-top:1rem;padding-top:1.5rem;border-top:1px solid var(--gray-200)}.user-info-display{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--gray-200)}.user-info-display h3{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:var(--gray-900)}@media (max-width: 768px){.mp-disconnected{flex-direction:column;align-items:flex-start}.mp-connected{flex-direction:column}.btn-disconnect{margin-left:0;width:100%;justify-content:center}.user-info{flex-direction:column;text-align:center}.photo-upload{align-items:center}}.diagnostico-section{margin-top:2rem;padding-top:2rem;border-top:2px solid var(--gray-200)}.diagnostico-header{margin-bottom:1.5rem}.diagnostico-header h3{font-size:1.25rem;font-weight:600;color:var(--gray-900);margin-bottom:.5rem}.diagnostico-actions{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.diagnostico-actions .btn{display:flex;align-items:center;gap:.5rem}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.diagnostico-results{display:flex;flex-direction:column;gap:1.5rem}.diagnostico-summary{padding:1.5rem;border-radius:.5rem;border:2px solid}.diagnostico-summary.status-ok{background:#d1fae5;border-color:var(--success)}.diagnostico-summary.status-warning{background:#fef3c7;border-color:#f59e0b}.diagnostico-summary.status-error{background:#fee2e2;border-color:var(--danger)}.diagnostico-summary h4{font-size:1.1rem;font-weight:600;margin-bottom:1rem;color:var(--gray-900)}.summary-stats{display:flex;gap:1.5rem;margin-bottom:1rem;flex-wrap:wrap}.stat{display:flex;flex-direction:column;gap:.25rem}.stat-label{font-size:.85rem;color:var(--gray-600)}.stat-value{font-size:1.5rem;font-weight:600;color:var(--gray-900)}.stat-ok .stat-value{color:var(--success)}.stat-warning .stat-value{color:#f59e0b}.stat-error .stat-value{color:var(--danger)}.critical-issues,.recommendations{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(0,0,0,.1)}.critical-issues h5,.recommendations h5{font-size:.95rem;font-weight:600;margin-bottom:.5rem;color:var(--gray-900)}.critical-issues ul,.recommendations ul{margin-left:1.5rem;color:var(--gray-700)}.critical-issues li,.recommendations li{margin-bottom:.5rem;line-height:1.5}.diagnostico-checks{display:flex;flex-direction:column;gap:1rem}.diagnostico-checks h4{font-size:1.1rem;font-weight:600;color:var(--gray-900);margin-bottom:.5rem}.check-item{padding:1.25rem;border-radius:.5rem;border:1px solid;background:var(--white)}.check-item.status-ok{border-color:var(--success);background:#f0fdf4}.check-item.status-warning{border-color:#f59e0b;background:#fffbeb}.check-item.status-error{border-color:var(--danger);background:#fef2f2}.check-item.status-unknown{border-color:var(--gray-300);background:var(--gray-50)}.check-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.check-header h5{font-size:1rem;font-weight:600;color:var(--gray-900);margin:0}.status-icon{flex-shrink:0}.status-icon.status-ok{color:var(--success)}.status-icon.status-error{color:var(--danger)}.status-icon.status-warning{color:#f59e0b}.status-icon.status-unknown{color:var(--gray-500)}.check-message{margin-bottom:.75rem;color:var(--gray-700);line-height:1.5}.check-details{margin-top:.75rem;padding:.75rem;background:#ffffff80;border-radius:.25rem;font-size:.9rem}.check-details strong{color:var(--gray-900);display:block;margin-bottom:.5rem}.check-details ul{margin-left:1.5rem;margin-top:.5rem;color:var(--gray-700)}.check-details li{margin-bottom:.25rem;line-height:1.4}.check-solution{margin-top:.75rem;padding:.75rem;background:#dbeafe;border-left:3px solid #3b82f6;border-radius:.25rem;font-size:.9rem;color:var(--gray-800)}.check-solution strong{color:#1e40af}@media (max-width: 768px){.diagnostico-actions{flex-direction:column}.diagnostico-actions .btn{width:100%;justify-content:center}.summary-stats{justify-content:space-between}.check-header{flex-wrap:wrap}}.terms-page{width:100%;min-height:calc(100vh - 200px);padding:2rem 0}.terms-container{max-width:900px;margin:0 auto;background:var(--white);border-radius:.75rem;padding:3rem;box-shadow:var(--shadow)}.back-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--gray-600);text-decoration:none;margin-bottom:2rem;transition:color .2s}.back-link:hover{color:var(--primary)}.terms-title{font-size:2.5rem;font-weight:700;color:var(--gray-900);margin-bottom:.5rem}.terms-updated{color:var(--gray-500);font-size:.95rem;margin-bottom:2rem;padding-bottom:2rem;border-bottom:2px solid var(--gray-200)}.terms-content{line-height:1.8;color:var(--gray-700)}.terms-section{margin-bottom:2.5rem}.terms-section h2{font-size:1.5rem;font-weight:600;color:var(--gray-900);margin-bottom:1rem}.terms-section p{margin-bottom:1rem;font-size:1rem}.terms-section ul{margin-left:1.5rem;margin-bottom:1rem}.terms-section li{margin-bottom:.5rem}.terms-section strong{color:var(--gray-900);font-weight:600}.terms-important{background:var(--warning);background:linear-gradient(135deg,#fef3c7,#fde68a);padding:2rem;border-radius:.75rem;border-left:4px solid var(--warning);margin-top:3rem}.terms-important h2{color:var(--gray-900)}.terms-important p{font-size:1.05rem;color:var(--gray-800)}@media (max-width: 768px){.terms-container{padding:1.5rem}.terms-title{font-size:2rem}.terms-section h2{font-size:1.25rem}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #2563eb;--primary-dark: #1e40af;--secondary: #10b981;--danger: #ef4444;--warning: #f59e0b;--success: #10b981;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--white: #ffffff;--shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1)}body{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:var(--gray-50);color:var(--gray-900)}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding:2rem;max-width:1400px;width:100%;margin:0 auto}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.btn{padding:.75rem 1.5rem;border:none;border-radius:.5rem;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.btn-primary{background-color:var(--primary);color:var(--white)}.btn-primary:hover{background-color:var(--primary-dark)}.btn-secondary{background-color:var(--gray-200);color:var(--gray-900)}.btn-secondary:hover{background-color:var(--gray-300)}.btn-success{background-color:var(--success);color:var(--white)}.btn-success:hover{background-color:#059669}.btn-danger{background-color:var(--danger);color:var(--white)}.btn-danger:hover{background-color:#dc2626}.btn:disabled{opacity:.5;cursor:not-allowed}.input{width:100%;padding:.75rem;border:1px solid var(--gray-300);border-radius:.5rem;font-size:1rem;transition:border-color .2s}.input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.card{background:var(--white);border-radius:.75rem;padding:1.5rem;box-shadow:var(--shadow)}.card-header{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--gray-200)}.card-title{font-size:1.5rem;font-weight:600;color:var(--gray-900)}.loading{display:flex;justify-content:center;align-items:center;min-height:400px}.spinner{width:40px;height:40px;border:4px solid var(--gray-200);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.grid{display:grid;gap:1rem}.grid-2{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}@media (max-width: 768px){.main-content{padding:1rem}.grid-2,.grid-3{grid-template-columns:1fr}}
